PricePosition
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «priceposition mt4.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
PricePosition — это пользовательский индикатор для MetaTrader 5, который определяет позицию цены относительно усреднённого сигнального уровня, рассчитанного на основе двух скользящих средних с периодами 26 и 20. Индикатор отображает на графике направление сделки (BUY или SELL), уровень цены поворота, текущие значения OHLC, стрелку направления свечи, а также день и время.
При закрытии свечи выше сигнального уровня индикатор показывает покупку, при закрытии ниже — продажу. Если цена не пробивает уровень, направление не отображается. Всплывающие уведомления срабатывают при смене направления, а также при росте, падении или отсутствии движения цены.
Настройки позволяют выбрать расположение информационной панели на графике (левый или правый угол), включить или отключить звуковые оповещения, а также задать цвета для направлений BUY, SELL и отсутствия тренда. Индикатор работает на любом таймфрейме и обновляет данные в реальном времени.
Настройки программы
| Настройка | Описание |
|---|---|
| cor | Определяет угол размещения информационной панели индикатора на графике: правый или левый. |
| UseAlert | Включает или отключает всплывающие звуковые уведомления при смене направления цены, а также при росте, падении или паузе в движении. |
| BuyColor | Цвет отображения направления покупки (BUY) на графике. Используется для текста и стрелок, указывающих на сигнал покупки. |
| SellColor | Цвет отображения направления продажи (SELL) на графике. Используется для текста и стрелок, указывающих на сигнал продажи. |
| clrNT | Цвет отображения элементов графика при отсутствии явного направления цены (когда свеча закрывается на уровне сигнальной линии). |
Поиск по коду файла
#property strict
#property description "PricePosition indicator provide the position of price in the point of angle"
#property description "when the price was rise or down, where the chance to buy or sell."
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 clrLime
#property indicator_width1 2
enum YN
{
Yes = 1,
No = 0
};
enum corner
{
RightHand=1,
LeftHand=0
};
input corner cor = RightHand; // Corner Position
input YN UseAlert = Yes; // Turn On Alert (Yes) or (No)
input color BuyColor = clrLime; // BUY Color
input color SellColor = clrOrangeRed; // SELL Color
input color clrNT = clrYellow; // No Trend Color
double angle[],
signal[],
media1[],
media2[];
string day[]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int xdis=0,
ydis=135;
color clrfont;
int cal,
pal,
prc,
pdn;
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
ObjectsDeleteAll();
GlobalVariablesDeleteAll();
return;
}
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
// код доступен только после оплаты
}
int i,limit;
limit=rates_total-prev_calculated;
if(prev_calculated>0) {limit++;}
ArraySetAsSeries(angle,true);
ArraySetAsSeries(signal,true);
ArraySetAsSeries(media1,true);
ArraySetAsSeries(media2,true);
ArraySetAsSeries(open,true);
ArraySetAsSeries(high,true);
ArraySetAsSeries(low,true);
ArraySetAsSeries(close,true);
for(i=limit-1; i>=0; i--)
{
media1[i]=iMA(_Symbol,0,26,0,2,4,i);
media2[i]=iMA(_Symbol,0,20,0,0,4,i);
signal[i]=(media1[i]+media2[i])/2;
}
for(i=limit-1; i>=0; i--)
{
if((open[i]<=signal[i])&&(close[i]>=signal[i])) angle[i]=low[i];
else if((open[i]>=signal[i])&&(close[i]<=signal[i])) angle[i]=high[i];
else angle[i]=EMPTY_VALUE;
}
double priceturn=0.0;
int seek=0;
int s=0;
while(seek<1)
{
if(angle[s]!=EMPTY_VALUE)
{
priceturn=angle[s];
seek++;
}
s++;
}
if(close[0]>priceturn)
{
CreateLabel(0,"AngleDirection","BUY","Verdana",28,BuyColor,cor,xdis,ydis);
CreateLabel(0,"AngleLevel","above "+DoubleToString(priceturn,_Digits),"Verdana",10,BuyColor,cor,xdis,ydis+45);
clrfont=BuyColor;
cal=1;
if((cal!=pal)&&(UseAlert==1))
{Alert("*"+WindowExpertName()+": "+_Symbol+", TF: ",strTF(_Period)+", @ "+TimeToString(TimeCurrent(),TIME_DATE|TIME_MINUTES)+
" --- BUY above --- ",DoubleToString(priceturn,_Digits)); pal=cal;}
}
else if(close[0]<priceturn)
{
CreateLabel(0,"AngleDirection","SELL","Verdana",28,SellCПоказано первые 50% кода (символов: 6885)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.