Скачать MetaTrader 5

Класс CExpertSignal

Класс CExpertSignal является базовым классом для создания генераторов торговых сигналов, поэтому он, предоставляя интерфейсы, сам ничего не делает (исключение составляют методы CheckReverseLong() и CheckReverseShort()).

Для того чтобы генератор торговых сигналов "загенерировал", нужно:

  1. Определиться с алгоритмами генерации торговых сигналов;
  2. Создать свой класс генератора, унаследовав его от CExpertSignal;
  3. Переопределить в своем классе виртуальные методы базового, заложив в них соответствующие алгоритмы.

В качестве примера можно рассмотреть любой mqh-файл из папки Expert\Signal\.

Описание

Класс CExpertSignal является основой для реализации алгоритмов генерации торговых сигналов.

Декларация

   class CExpertSignal : public CExpertBase

Заголовок

   #include <Expert\ExpertSignal.mqh>

Иерархия наследования

  CObject

      CExpertBase

          CExpertSignal

Прямые потомки

CSignalAC, CSignalAMA, CSignalAO, CSignalBearsPower, CSignalBullsPower, CSignalCCI, CSignalDeM, CSignalDEMA, CSignalEnvelopes, CSignalFrAMA, CSignalRSI, CSignalRVI, CSignalSAR, CSignalStoch, CSignalTEMA, CSignalTriX, CSignalWPR

Методы класса по группам

Инициализация

 

virtual InitIndicators

Инициализирует необходимые индикаторы и таймсерии

virtual ValidationSettings

Проверяет корректность настроек объекта

virtual AddFilter

Добавляет фильтр в комбинированный сигнал

Доступ к защищенным данным

 

BasePrice

Устанавливает базовый уровень цены

UsedSeries

Получает флаги используемых таймсерий

Установка параметров

 

Weight

Устанавливает значение параметра "Weight"

PatternsUsage

Устанавливает значение параметра "PatternsUsage"

General

Устанавливает значение параметра "General"

Ignore

Устанавливает значение параметра "Ignore"

Invert

Устанавливает значение параметра "Invert"

ThresholdOpen

Устанавливает значение параметра "ThresholdOpen"

ThresholdClose

Устанавливает значение параметра "ThresholdClose"

PriceLevel

Устанавливает значение параметра "PriceLevel"

StopLevel

Устанавливает значение параметра "StopLevel"

TakeLevel

Устанавливает значение параметра "TakeLevel"

Expiration

Устанавливает значение параметра "Expiration"

Magic

Устанавливает значение параметра "Magic"

Методы проверки необходимости открытия/разворота/закрытия позиций

 

virtual CheckOpenLong

Определяет необходимость открытия длинной позиции

virtual CheckCloseLong

Определяет необходимость закрытия длинной позиции

virtual CheckOpenShort

Определяет необходимость открытия короткой позиции

virtual CheckCloseShort

Определяет необходимость закрытия короткой позиции

virtual CheckReverseLong

Определяет необходимость разворота длинной позиции

virtual CheckReverseShort

Определяет необходимость разворота короткой позиции

Методы установки параметров

 

virtual OpenLongParams

Устанавливает параметры открытия длинной позиции

virtual OpenShortParams

Устанавливает параметры открытия короткой позиции

virtual CloseLongParams

Устанавливает параметры закрытия длинной позиции

virtual CloseShortParams

Устанавливает параметры закрытия короткой позиции

Методы проверки необходимости управления отложенными ордерами

 

virtual CheckTrailingOrderLong

Определяет необходимость модификации параметров отложенного ордера на покупку

virtual CheckTrailingOrderShort

Определяет необходимость модификации параметров отложенного ордера на продажу

Методы проверки формирования рыночных моделей

 

virtual LongCondition

Вовращает результат проверки возникновения условия на покупку

virtual ShortCondition

Вовращает результат проверки возникновения условия на продажу

virtual Direction

Возвращает значение "взвешенного" направления движения цены

Методы унаследованные от CObject

Prev, Prev, Next, Next, Save, Load, Type, Compare

Методы унаследованные от CExpertBase

InitPhase, TrendType, UsedSeries, EveryTick, Open, High, Low, Close, Spread, Time, TickVolume, RealVolume, Init, Symbol, Period, Magic, SetMarginMode, SetPriceSeries, SetOtherSeries