Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 45

 

Подскажите.

 Как увеличить шаг трала.

Часто обращается к серверу тралит через каждый пипс.

Нужно через 50 или 100 пипсов на пятизнаке. 

 
// +-------------------------------------------------------------------------+
// | checkTrailingStop function                                              |
// +-------------------------------------------------------------------------+
void checkTrailingStop( int iiPos ) {

  // check Trailing Stop and set it to follow the price                        
 
  double  ldblCurrentPrice;
  double  ldblCurrentSL;
  double  ldblNewStopLoss;
  double  ldblSymbolPoint;
  long    llDigits;
  int     liDigits;
 
  MqlTradeRequest     mqlTradeRequest     = { 0 };
  MqlTradeResult      mqlTradeResult      = { 0 };
  MqlTradeCheckResult mqlTradeCheckResult = { 0 };
 
  if ( STOPLOSS <= 0 ) {
    return;
  }
 
  // if there is no open position leave the routine
  if ( !PositionSelect( gSymbol[iiPos].gstrSymbol ) ) {
    return;
  }

  ldblSymbolPoint = SymbolInfoDouble( gSymbol[iiPos].gstrSymbol, SYMBOL_POINT );
 
  ldblCurrentSL   = PositionGetDouble( POSITION_SL );
 
  if ( PositionGetInteger ( POSITION_TYPE ) == POSITION_TYPE_SELL ) {
    ldblCurrentPrice = SymbolInfoDouble( gSymbol[iiPos].gstrSymbol, SYMBOL_BID );
    ldblNewStopLoss  = ldblCurrentPrice + STOPLOSS * ldblSymbolPoint;
    if ( ldblCurrentSL <= ldblNewStopLoss ) {
      return;
    }
 } else {
    ldblCurrentPrice = SymbolInfoDouble( gSymbol[iiPos].gstrSymbol, SYMBOL_ASK );
    ldblNewStopLoss  = ldblCurrentPrice - STOPLOSS * ldblSymbolPoint;
    if ( ldblCurrentSL >= ldblNewStopLoss ) {
      return;

Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура результатов проверки торгового запроса
Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура результатов проверки торгового запроса
  • www.mql5.com
Стандартные константы, перечисления и структуры / Структуры данных / Структура результатов проверки торгового запроса - Документация по MQL5
 
Philin: Подскажите. Как увеличить шаг трала. Часто обращается к серверу тралит через каждый пипс. Нужно через 50 или 100 пипсов на пятизнаке. 

1. Вставляйте код правильно (Ctrl+Alt+M).

2. По всей видимости, за срабатывание "трала" отвечают вот эти строчки:

   if(ldblCurrentSL<=ldblNewStopLoss)
     {
      return;
     }
   if(ldblCurrentSL>=ldblNewStopLoss)
     {
      return;
     }

 В случае POSITION_TYPE_SELL "трал" срабатывает, если не выполняется условие 'ldblCurrentSL<=ldblNewStopLoss'. Попробуйте изменить его примерно вот так:

   if(ldblCurrentSL-50*_Point<=ldblNewStopLoss) return;

 Ну и по аналогии - для покупки.

 
Yedelkin:

1. Вставляйте код правильно (Ctrl+Alt+M).

2. По всей видимости, за срабатывание "трала" отвечают вот эти строчки:

 В случае POSITION_TYPE_SELL "трал" срабатывает, если не выполняется строчка 'ldblCurrentSL<=ldblNewStopLoss'. Попробуйте изменить её примерно вот так:

 Ну и по аналогии - для покупки.

 

Спасибо огромное попробую.

 

 

помогите пожалуйста запустить вот это: https://www.mql5.com/ru/code/268

попробовал через визард создания советника, но в списке сигналов нет "Signals based on reversal candlestick patterns", как написано в описании

 потом попробовал полностью загрузить в metatrader из codebase, эксперт появился, пытаюсь его тестировать на EUR/USD H1 с дефолтными параметрами, а он не делает никаких ордеров 

Мастер MQL5 - Торговые сигналы по факту формирования "разворотной" свечной модели
Мастер MQL5 - Торговые сигналы по факту формирования "разворотной" свечной модели
  • голосов: 7
  • 2011.01.19
  • MetaQuotes Software Corp.
  • www.mql5.com
Торговые сигналы по факту формирования "разворотной" свечной модели "Signals based on reversal candlestick patterns" (класс CSignalCandles из Стандартной библиотеки).
 
Philin:

 Для большей универсальности можно вместо _Point поставить ldblSymbolPoint:

if(ldblCurrentSL-50*ldblSymbolPoint<=ldblNewStopLoss) return;
 
Dimka-novitsek: в какой форме лучше всего пересылать с компьютера на компьютер советник? Как его можно упаковать в файл?
Надо в 1-ом компьютере открыть папку, где хранятся советники (типа MQL5/Experts), скопировать нужный файл (например, myExpert.mq5) и вставить этот файл в аналогичную папку на втором компьютере. Затем скомпилировать его.
 

Скажите пожалуста, что такое папка Users? Там 76,3 % обьема диска C !!!!!!!  А я ее вообще в списках не вижу...  Какая ярость!! Что же там? 

4,94 Гб свободно на диске C из 197,9Гб !!     А как бы самый  старший брат не сказал, что мол это наши платформы.. Сам танками и монстрами больше всех забивает.

 
Dimka-novitsek: Скажите пожалуста, что такое папка Users? Там 76,3 % обьема диска C !!!!!!!  А я ее вообще в списках не вижу...  Какая ярость!! Что же там? 

4,94 Гб свободно на диске C из 197,9Гб !!     А как бы самый  старший брат не сказал, что мол это наши платформы.. Сам танками и монстрами больше всех забивает.

Вряд ли эти вопросы имеют отношение к тематике форума.
 
Спасибо!
 

при тесте в тестере выдало Критическая ошибка OnTick() zero divade Где то поделилось на 0.

Как в здоровезном советнике найти это самое место? Вт.ч. возможно используя нотепад? 

Документация по MQL5: Программы MQL5 / Ошибки выполнения
Документация по MQL5: Программы MQL5 / Ошибки выполнения
  • www.mql5.com
Программы MQL5 / Ошибки выполнения - Документация по MQL5
Причина обращения: