dl hurst macd st2050 v3.1.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «dl hurst macd st2050 v3.1.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Это пользовательский индикатор для MetaTrader 4 на языке MQL4, работающий в отдельном окне графика. Индикатор вычисляет значения, аналогичные MACD, используя данные треугольных скользящих средних (TMA) с более высокого таймфрейма и отображает их в виде гистограмм. Дополнительно строится линия сигнала на основе простой скользящей средней и создаются горизонтальные уровни на графике для визуальной ориентации.
Настройки программы
| Настройка | Описание |
|---|---|
| use_SMA | Использовать SMA — Включает или отключает построение линии сигнала на основе простой скользящей средней от основного буфера. |
| Signal SMA Period (SignalSMA) | Период сигнальной SMA — Период простой скользящей средней, используемой для формирования линии сигнала. |
| TMA_centered_name | Имя индикатора TMA — Название пользовательского индикатора TMAcentered, вызываемого через iCustom для расчёта значений. |
| TMA_slow_value | Медленный период TMA — Период медленной TMA, используемой при расчёте значений. |
| TMA_fast_value | Быстрый период TMA — Период быстрой TMA, используемой при расчёте значений. |
| st2050CommomSettings | Общие настройки st2050 — Разделительный текстовый параметр для группировки общих настроек в диалоге ввода. |
| Timeframe | Таймфрейм — Таймфрейм, с которого загружаются данные для расчёта через ArrayCopySeries и iCustom. |
| MaxBars | Максимум баров — Ограничение на количество баров, обрабатываемых индикатором за один пересчёт. |
| WaitForClose | Ожидание закрытия свечи — При включении индикатор не пересчитывается до появления новой свечи. |
| RecalcOnClose | Пересчёт при закрытии — При включении и смене бара расширяет диапазон пересчитываемых баров, если текущий лимит слишком мал. |
| st2050LevelsSettings | Настройки уровней st2050 — Разделительный текстовый параметр для группировки настроек уровней в диалоге ввода. |
| LevelColorUp | Цвет уровня вверх — Цвет горизонтальной линии верхнего уровня. |
| LevelColorDown | Цвет уровня вниз — Цвет горизонтальной линии нижнего уровня. |
| LevelZeroColor | Цвет нулевого уровня — Цвет горизонтальной линии нулевого уровня. |
| SetZeroLevel | Установить нулевой уровень — Включает отрисовку горизонтальной линии нулевого уровня на графике. |
| SetCommonLevels | Установить общие уровни — Включает отрисовку горизонтальных уровней на расстоянии CommonLevelDistance от нуля. |
| CommonLevelDistance | Расстояние общих уровней — Значение расстояния для общих уровней, пересчитываемое в зависимости от числа десятичных знаков инструмента. |
| SetExtraLevels | Установить дополнительные уровни — Включает отрисовку дополнительных горизонтальных уровней на расстоянии ExtraLevelDistance от нуля. |
| ExtraLevelDistance | Расстояние дополнительных уровней — Значение расстояния для дополнительных уровней, пересчитываемое в зависимости от числа десятичных знаков инструмента. |
Поиск по коду файла
#property version "1.01"
#property description "Dragons Lair Forex aims to interpret price action"
#property description "on a day to day basis using classic and timeless "
#property description "principles to gain an orientation and identify"
#property description "key areas of interest for optimal trading."
#property description "---"
#property description "Updated by st2050"
#property description "Welcome to forexsystemsru.com"
#property strict
#include <MovingAverages.mqh>
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 RoyalBlue
#property indicator_color2 Sienna
#property indicator_color3 CLR_NONE
#property indicator_width1 2
#property indicator_width2 2
#property indicator_levelcolor DimGray
input bool use_SMA = true;
input int SignalSMA=9; // Signal SMA Period
extern string TMA_centered_name = "TMAcentered";
extern int TMA_slow_value = 66;
extern int TMA_fast_value = 22;
extern string st2050CommomSettings = "--- st2050 Common Settings ---";
extern int Timeframe = 240;
extern int MaxBars = 1000;
extern bool WaitForClose = true;
extern bool RecalcOnClose = true;
extern string st2050LevelsSettings = "--- st2050 Levels Settings ---";
extern color LevelColorUp = RoyalBlue;
extern color LevelColorDown = Sienna;
extern color LevelZeroColor = DimGray;
extern bool SetZeroLevel = true;
extern bool SetCommonLevels = true;
extern double CommonLevelDistance = 20;
extern bool SetExtraLevels = true;
extern double ExtraLevelDistance = 50;
double MacdBuffer1[];
double MacdBuffer2[];
double SignalBuffer[];
double MACDmaster[];
string IndicatorName;
int WindowNo;
double PeriodMultiplier;
int deinit() {
RemoveObjects(IndicatorName);
return(0);
}
void RemoveObjects(string PreName)
{
for(int k=ObjectsTotal()-1; k>=0; k--)
{
string Obj_Name=ObjectName(k); // Запpашиваeм имя объeкта
string Head=StringSubstr(Obj_Name,0,StringLen(PreName)); // Извлeкаeм первыe симолы
if (Head==PreName)// Найдeн объeкт, ..
{
ObjectDelete(Obj_Name);
}
}
}
int OnInit(void)
{
// код доступен только после оплаты
}
IndicatorDigits(Digits+1);
SetIndexBuffer(0,MacdBuffer1);
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(1,MacdBuffer2);
SetIndexStyle(1,DRAW_HISTOGRAM);
SetIndexBuffer(2,SignalBuffer);
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(3,MACDmaster);
SetIndexStyle(3,DRAW_NONE);
SetIndexDrawBegin(1,SignalSMA);
if (Timeframe<=0) Timeframe=Period();
IndicatorName="DL_Hurst_MACD_"+ IntegerToString(Timeframe);
IndicatorShortName(IndicatorName);
WindowNo=ChartWindowFind(ChartID(), IndicatorName);
RemoveObjects(IndicatorName);
string ObjName;
double LevelValue;
PeriodMultiplier=Timeframe/Period();
if (SetZeroLevel)
{
ObjName=IndicatorName+"Level_Zero";
ObjectCreate(0, ObjName, OBJ_HLINE, WindowNo, Time[0], 0);
ObjectSet(ObjName, OBJPROP_COLOR, LevelZeroColor);
ObjectSet(ObjName, OBJPROP_STYLE, STYLE_DOT);
}
if (SetCommonLevels)
{
LevelValue=CommonLevelDistance/MathPow(10,Digits-1);
ObjName=IndicatorNaПоказано первые 50% кода (символов: 5004)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.