ptl histo
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «ptl 2.07 histo(alerts + lines).mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный индикатор отображает гистограмму направления тренда в отдельном окне графика, используя два набора параметров длины и смещения для расчёта опорных уровней. Зелёные столбцы соответствуют восходящему тренду, красные — нисходящему, что позволяет визуально оценить смену направления движения цены.
Индикатор поддерживает работу на различных таймфреймах, включая получение данных с более высокого таймфрейма через механизм iCustom. При смене тренда на графике могут отрисовываться вертикальные линии с настраиваемыми цветом, стилем и толщиной.
Встроенная система уведомлений обеспечивает отправку алертов в виде всплывающих сообщений, звуковых сигналов, электронной почты или push-уведомлений при изменении направления тренда. Все параметры настройки доступны пользователю через диалог свойств индикатора.
Настройки программы
| Настройка | Описание |
|---|---|
| Time frame (TimeFrame) | Таймфрейм — Таймфрейм, на котором рассчитывается индикатор. |
| Slow length (SlowLength) | Медленная длина — Период расчёта медленного опорного уровня. |
| Slow pip displace (SlowPipDisplace) | Медленное смещение в пунктах — Смещение медленного опорного уровня в пунктах. |
| Fast length (FastLength) | Быстрая длина — Период расчёта быстрого опорного уровня. |
| Fast pip displace (FastPipDisplace) | Быстрое смещение в пунктах — Смещение быстрого опорного уровня в пунктах. |
| Turn alerts on? (AlertsOn) | Включить алерты — Общий переключатель для включения или отключения всех уведомлений. |
| Alerts on current bar? (AlertsOnCurrent) | Алерты на текущем баре — Определяет, на каком баре отслеживать изменение тренда: на текущем или на предыдущем. |
| Alerts message? (AlertsMessage) | Алерты в виде сообщений — Включение или отключение отправки всплывающих сообщений при изменении тренда. |
| Alerts sound? (AlertsSound) | Звуковой сигнал — Включение или отключение звукового сигнала при изменении тренда. |
| Alerts email? (AlertsEmail) | Алерты по электронной почте — Включение или отключение отправки уведомлений по электронной почте при изменении тренда. |
| Alerts push notification? (AlertsNotification) | Push-уведомления — Включение или отключение отправки push-уведомлений при изменении тренда. |
| Histogram bars width (HistoWidth) | Ширина столбцов гистограммы — Толщина столбцов гистограммы. |
| Up histogram color (UpHistoColor) | Цвет гистограммы восходящего тренда — Цвет столбцов гистограммы, отображающих восходящий тренд. |
| Down histogram color (DnHistoColor) | Цвет гистограммы нисходящего тренда — Цвет столбцов гистограммы, отображающих нисходящий тренд. |
| Show vertical lines (verticalLinesVisible) | Показать вертикальные линии — Включение или отключение отображения вертикальных линий при смене тренда. |
| Vertical lines drawn on newest bar of higher time frame bar? (linesOnNewest) | Линии на новом баре высшего таймфрейма — Определяет, рисовать ли вертикальные линии на самом новом баре более высокого таймфрейма. |
| Lines ID (verticalLinesID) | Идентификатор вертикальных линий — Идентификатор вертикальных линий, используемый для их поиска и удаления. |
| Lines up color (verticalLinesUpColor) | Цвет вертикальных линий восходящего тренда — Цвет вертикальных линий, соответствующих восходящему тренду. |
| Lines down color (verticalLinesDnColor) | Цвет вертикальных линий нисходящего тренда — Цвертикальных линий, соответствующих нисходящему тренду. |
| Lines style (verticalLinesStyle) | Стиль вертикальных линий — Стиль отображения вертикальных линий. |
| lines width (verticalLinesWidth) | Толщина вертикальных линий — Толщина вертикальных линий. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_minimum 0
#property indicator_maximum 1
#property strict
extern ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT; // Time frame
extern int SlowLength = 7; // Slow length
extern double SlowPipDisplace = 0; // Slow pip displace
extern int FastLength = 3; // Fast length
extern double FastPipDisplace = 0; // Fast pip displace
extern bool AlertsOn = false; // Turn alerts on?
extern bool AlertsOnCurrent = true; // Alerts on current bar?
extern bool AlertsMessage = true; // Alerts message?
extern bool AlertsSound = false; // Alerts sound?
extern bool AlertsEmail = false; // Alerts email?
extern bool AlertsNotification = false; // Alerts push notification?
extern int HistoWidth = 3; // Histogram bars width
extern color UpHistoColor = clrLimeGreen; // Up histogram color
extern color DnHistoColor = clrRed; // Down histogram color
extern bool verticalLinesVisible = false; // Show vertical lines
extern bool linesOnNewest = false; // Vertical lines drawn on newest bar of higher time frame bar?
extern string verticalLinesID = "ptl Lines"; // Lines ID
extern color verticalLinesUpColor = clrDeepSkyBlue; // Lines up color
extern color verticalLinesDnColor = clrPaleVioletRed; // Lines down color
extern ENUM_LINE_STYLE verticalLinesStyle = STYLE_DOT; // Lines style
extern int verticalLinesWidth = 0; // lines width
double line1[],line2[],hist1[],hist2[],trend[],trena[],count[];
string indicatorFileName;
#define _mtfCall(_buff,_ind) iCustom(NULL,TimeFrame,indicatorFileName,PERIOD_CURRENT,SlowLength,SlowPipDisplace,FastLength,FastPipDisplace,AlertsOn,AlertsOnCurrent,AlertsMessage,AlertsSound,AlertsEmail,AlertsNotification,0,UpHistoColor,DnHistoColor,verticalLinesVisible,linesOnNewest,verticalLinesID,verticalLinesUpColor,verticalLinesDnColor,verticalLinesStyle,verticalLinesWidth,_buff,_ind)
int init()
{
// код доступен только после оплаты
}
int deinit()
{
string tlookFor = verticalLinesID+":";
int tlookForLength = StringLen(tlookFor);
for (int i=ObjectsTotal()-1; i>=0; i--)
{
string objectName = ObjectName(i);
if (StringSubstr(objectName,0,tlookForLength) == tlookFor) ObjectDelete(objectName);
}
return(0);
}
int start()
{
// код доступен только после оплаты
}
int counted_bars = IndicatorCounted();
if(counted_bars < 0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = fmin(Bars-counted_bars,Bars-1); count[0] = limit;
if (TimeFrame != _Period)
{
limit = (int)MathMax(limit,fmin(Bars-1,_mtfCall(6,0)*TimeFrame/_Period));
for (int i=limit; i>=0; i--)
{
int y = iПоказано первые 50% кода (символов: 5259)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.