Обсуждение статьи "Торговый эксперт по книге Б. Вильямса "Новые измерения в биржевой торговле"" - страница 3

 
Vladimir Karputov:

Вычистил, исправил:


Версия  "1.002" - теперь ошибок "нет денег для открытия позиции" значительно меньше:

Файлы:
h_ts_bw.mqh  128 kb
 

О, супер! спасибо ! посмотрим!

 

так (в приложенном файле) печально выглядит тестирование эксперта в терминале известного брокера. Не работает трал, а поскольку контроль за маржой не предусмотрен, то сделки открываются, но не закрываются до самого конца тестирования, а потом - капец.

но это не во всех терминалах, слава Богу! у адекватных происходит правильно.

Благодарю за поддержку кода эксперта в актуальном состоянии!

Файлы:
2017-08-13.png  116 kb
 
natyog:

так (в приложенном файле) печально выглядит тестирование эксперта в терминале известного брокера. Не работает трал, а поскольку контроль за маржой не предусмотрен, то сделки открываются, но не закрываются до самого конца тестирования, а потом - капец.

но это не во всех терминалах, слава Богу! у адекватных происходит правильно.

Благодарю за поддержку кода эксперта в актуальном состоянии!


Модификация позиций исправлена: version "1.003"

Внесённые изменения:

Цены stop loss и take profit необходимо нормализовать при помощи метода CSymbolInfo::NormalizePrice, а не при помощи NormalizeDouble. Это важно.


Файлы:
h_ts_bw.mqh  129 kb
 

если заменить строку 422 if(exp_trade.PositionModify(m_Symbol,NormalizeDouble(StopLoss,s_info.Digits()),pos_info.TakeProfit())) в version "1.002" на

 if(exp_trade.PositionModify(m_Symbol,s_info.NormalizePrice(StopLoss),pos_info.TakeProfit()))

картина та же

Файлы:
 
natyog:

если заменить строку 422 if(exp_trade.PositionModify(m_Symbol,NormalizeDouble(StopLoss,s_info.Digits()),pos_info.TakeProfit())) в version "1.002" на

 if(exp_trade.PositionModify(m_Symbol,s_info.NormalizePrice(StopLoss),pos_info.TakeProfit()))

картина та же


От Вас нужны скриншоты:

  1. Терминал - окно "Тестер стратегий" - вкладка "Настройки"
  2. Терминал - окно "Тестер стратегий" - вкладка "Параметры"
  3. Тип торгового счёта: неттинг или хедж
  4. Название торгового сервера к которому Вы подключаетесь
  5. Приложите файл журнала тестера.

 
natyog:

если заменить строку 422 if(exp_trade.PositionModify(m_Symbol,NormalizeDouble(StopLoss,s_info.Digits()),pos_info.TakeProfit())) в version "1.002" на

 if(exp_trade.PositionModify(m_Symbol,s_info.NormalizePrice(StopLoss),pos_info.TakeProfit()))

картина та же


Просто "заменить" что-то в файле "h_ts_bw.mqh" - этого мало. Нужно ещё СКОМПИЛИРОВАТЬ файл советника - "tc_bw_new_version_2-02.mq5".

 

ну, это уже несерьезно. неужели вы полагаете, что не было сделано!? обижаете

терминал RoboForex, счет хедж

 
natyog:
ну, это уже несерьезно. неужели вы полагаете, что не было сделано!? обижаете

Ага, отлично. Значит будем искать ...

 
и журнал 
Файлы: