ptl 2.05 alerts @fxsignalspot.com.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ptl 2.05 alerts @fxsignalspot.com.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор для MetaTrader 4, отображающий линии тренда на основе экстремумов цены за настраиваемые периоды. Поддерживает несколько визуальных режимов: линии, гистограммы направления, стрелки смены тренда и отрисовку свечей поверх графика. Индикатор способен отправлять уведомления через диалоговое окно, электронную почту, push-сообщения и звуковой сигнал при изменении направления тренда. Работает как на текущем таймфрейме, так и на указанном внешнем таймфрейме.
Настройки программы
| Настройка | Описание |
|---|---|
| TimeFrame | Таймфрейм — Период графика, на котором рассчитываются и отображаются линии тренда. |
| SlowLength | Длина медленной линии — Период расчёта экстремумов цены для построения медленной линии тренда. |
| SlowPipDisplace | Смещение медленной линии в пунктах — Вертикальное смещение медленной линии в пунктах цены. |
| FastLength | Длина быстрой линии — Период расчёта экстремумов цены для построения быстрой линии тренда. |
| FastPipDisplace | Смещение быстрой линии в пунктах — Вертикальное смещение быстрой линии в пунктах цены. |
| AlertsOn | Включить уведомления — Общий переключатель отправки уведомлений при изменении направления тренда. |
| AlertsOnCurrent | Уведомления на текущем баре — Определяет, на каком баре проверять условие для отправки уведомления. |
| AlertsMessage | Сообщение в окне алерта — Выводить уведомление в виде диалогового окна. |
| AlertsSound | Звуковое уведомление — Воспроизводить звуковой файл при изменении тренда. |
| AlertsEmail | Email-уведомление — Отправлять электронное письмо при изменении тренда. |
| AlertsNotification | Push-уведомление — Отправлять push-уведомление на мобильное устройство. |
| ShowColoredBars | Показать цветные столбцы — Отображать гистограмму, отражающую направление тренда. |
| ShowLines | Показать линии — Отображать линии тренда на графике. |
| ShowArrows | Показать стрелки — Отображать стрелки при смене направления тренда. |
| Arrow code down (ArrowCodeDn) | Код стрелки вниз — Символьный код отображаемой стрелки для нисходящего тренда. |
| Arrow code up (ArrowCodeUp) | Код стрелки вверх — Символьный код отображаемой стрелки для восходящего тренда. |
| Arrow on first bars (ArrowOnFirst) | Стрелки на первых барах — Размещать стрелки на первых барах вместо предыдущих. |
| ShowCandles | Показать свечи — Отрисовывать свечной график поверх индикатора. |
| CandleCount | Количество свечей — Максимальное количество отображаемых свечей. |
| WickColor | Цвет теней свечей — Цвет теней (wicks) отрисовываемых свечей. |
| BodyUpColor | Цвет тела бычьей свечи — Цвет тела свечи при восходящем направлении. |
| BodyDownColor | Цвет тела медвежьей свечи — Цвет тела свечи при нисходящем направлении. |
| BodyNeutralColor | Цвет тела нейтральной свечи — Цвет тела свечи при нейтральном состоянии. |
| BodyWidth | Ширина тела свечи — Толщина линии тела свечи. |
| DrawAsBack | Рисовать на заднем плане — Отображать графические объекты свечей позади ценового графика. |
| UniqueID | Уникальный идентификатор — Префикс имён графических объектов для предотвращения конфликтов при множественном запуске. |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 6
#property indicator_color1 PaleVioletRed
#property indicator_color2 LimeGreen
#property indicator_color3 PaleVioletRed
#property indicator_color4 LimeGreen
#property indicator_color5 PaleVioletRed
#property indicator_color6 LimeGreen
#property indicator_style1 STYLE_DOT
#property indicator_style2 STYLE_DOT
#property indicator_width3 2
#property indicator_width4 2
#property indicator_width5 3
#property indicator_width6 3
extern ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT;
extern int SlowLength = 7;
extern double SlowPipDisplace = 0;
extern int FastLength = 3;
extern double FastPipDisplace = 0;
extern bool AlertsOn = false;
extern bool AlertsOnCurrent = true;
extern bool AlertsMessage = true;
extern bool AlertsSound = false;
extern bool AlertsEmail = false;
extern bool AlertsNotification = false;
extern bool ShowColoredBars = true;
extern bool ShowLines = true;
extern bool ShowArrows = true;
extern int ArrowCodeDn = 159; // Arrow code down
extern int ArrowCodeUp = 159; // Arrow code up
extern bool ArrowOnFirst = true; // Arrow on first bars
extern bool ShowCandles = false;
extern int CandleCount = 500;
extern color WickColor = clrGray;
extern color BodyUpColor = clrLimeGreen;
extern color BodyDownColor = clrPaleVioletRed;
extern color BodyNeutralColor = clrSilver;
extern int BodyWidth = 4;
extern bool DrawAsBack = false;
extern string UniqueID = "ptlCandles1";
double line1[];
double line2[];
double hist1[];
double hist2[];
double arrou[];
double arrod[];
double trend[];
double trena[];
string indicatorFileName;
bool returnBars;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
string lookFor = UniqueID+":";
int lookForLength = StringLen(lookFor);
for (int i=ObjectsTotal()-1; i>=0; i--)
{
string objectName = ObjectName(i); if (StringSubstr(objectName,0,lookForLength) == lookFor) ObjectDelete(objectName);
}
return(0);
}
int start()
{
// код доступен только после оплаты
}
int counted_bars=IndicatorCounted();
if(counted_bars < 0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);
if (returnBars) { line1[0] = MathMin(limit+1,Bars-1); return(0); }
double pipMultiplier = 1; if (Digits==3 || Digits==5) pipMultiplier =10;
int numOfCandles = MathMin(Bars,CandleCount); if (numOfCandles==0) numOfCandles=Bars-1;
if (TimeFrame == _Period)
{
for (int i = limit; i >= 0; i--)
{
double thigh1 = High[iHighest(NULL, 0, MODE_HIGH,SlowLength,i)] + SlowPipDisplace*Point*pipMultiplier;
double tlow1 = Low[iLowest(NULL, 0, MODE_LOW, SlowLength,i)] - SlowPipDisplace*Point*pipMultiplier;
double thigh2 = High[iHighest(NULL, 0, MODE_HIGH,FastLength,i)] + FastPipDisplace*Point*pipMultiplier;
double tlow2 = Low[iLowest(NULL, 0, MODE_LOW, FastLength,i)] - FastPipDisplace*Point*pipMultiplier;
if (Close[i]>line1[i+1])
line1[i] = tlow1;
else line1[i] = thigh1;
if (Close[i]>line2[i+1])
line2[i] = tlow2;
else line2[i] = thigh2;
hist1[i] = EMPTY_VALUE;
hist2[i] = EMPTY_VALUE;
arrou[i] = EMPTY_VALUE;
arrod[i] = EMPTY_VALUE;
trena[i] = trena[i+1];
trend[i] = 0;
if (Close[i]<line1[i] && Close[i]<line2[i]) trend[i] = 1;
if (Close[i]>line1[i] && Close[i]>line2[i]) trend[i] = -1;
if (line1[i]>line2[i] || trend[i] == 1) trena[i] = 1;
if (line1[i]<line2[i] || trend[i] == -1) trena[i] = -1Показано первые 50% кода (символов: 7532)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.