Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
Aleksey Vyazmikin: Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
Aleksey Vyazmikin: Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
Если каждую хотелку впихивать в Тестер, то во что он превратится? Эта задача может быть решена программно...
Aleksey Vyazmikin: Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
Would it be possible to add the opening-price and the magic-number and possibly the opening time to the structure MqlTradeTransaction &trans of the function OnTradeTransaction()?
I
save different indicator values when opening a position and I want to
assign these values for statistical evaluation immediately when the
position was closed e.g. depending on the result of the corresponding
variable (structure). I do not want to loop through the history at the
end of the tests I can do it easier this way!
The key categories would be e.g. profit or loss, closed by TP (fabs(trans.price-trans.price_tp)>..) or SL etc..
Unfortunately,
I cannot calculate the amount of profit in points because the opening
price is missing and is only accessible by a accessing the history. This
is it unnecessarily cumbersome. :(
I get the magic number from MqlTradeRequest &request: request.magic.
But it would be easier if you could find everything in trans!
Would be nice:
Можно ли добавить цену открытия и магический номер и, возможно, время открытия в структуру MqlTradeTransaction & trans функции OnTradeTransaction ()?
Я сохраняю различные значения индикатора при открытии позиции и хочу назначить эти значения для статистической оценки сразу после закрытия позиции, например, в зависимости от результата соответствующей переменной (структуры). Я не хочу перебирать историю в конце тестов, я могу сделать это проще!
Ключевыми категориями могут быть, например, прибыль или убыток, закрытые с помощью TP (fabs (trans.price-trans.price_tp)> ..) или SL и т. Д.
К сожалению, я не могу рассчитать сумму прибыли в пунктах, потому что цена открытия отсутствует и доступна только при доступе к истории. Это излишне громоздко. :(
Я получил магический номер от MqlTradeRequest и запрос: request.magic.
Но было бы проще, если бы вы могли найти все в транс!
Было бы здорово:
voidOnTradeTransaction(constMqlTradeTransaction &trans,
constMqlTradeRequest &request,
constMqlTradeResult &result)
{
if ( trans.type != TRADE_TRANSACTION_HISTORY_ADD ) return; // nothing closed if ( trans.symbol != _Symbol ) return; // if ( request.magic != MyMagicNum ) return; // why not even in trans as trans.magic ?datetime duration = TimeCurrent() - trans.time_open; // <= I miss: trans.time_openif ( trans.order_type == ORDER_TYPE_BUY && request.price > request. ... (price_open?) ) { .. } // winner ...
...
}
И ещё момент касательно неявного оператора копирования. У вас он имеет тип void, а в C++ он возвращает ссылку на объект. Коль уж MQL пока не поддерживает ссылки, то можно было бы возвращать константную копию объекта, это хоть какой-то компромисс, дающий возможность использования константных методов у возвращаемого объекта.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
И в чем смысл? Что это даст?
Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
Если каждую хотелку впихивать в Тестер, то во что он превратится? Эта задача может быть решена программно...
Хорошо бы в настройках тестера иметь возможность указывать минимальное число баров для каждого TF, а то получается. что запуская советник на малом TF можно не получить нужной информации с верхних TF из-за нехватки баров для расчета индикаторов. В частности я тестирую на M1, а мне нужна информация с D1 за 360 баров... а баров столько нет в окне тестера.
Почему нет? Кто не обеспечил?
Would it be possible to add the opening-price and the magic-number and possibly the opening time to the structure MqlTradeTransaction &trans of the function OnTradeTransaction()?
I save different indicator values when opening a position and I want to assign these values for statistical evaluation immediately when the position was closed e.g. depending on the result of the corresponding variable (structure). I do not want to loop through the history at the end of the tests I can do it easier this way!
The key categories would be e.g. profit or loss, closed by TP (fabs(trans.price-trans.price_tp)>..) or SL etc..
Unfortunately, I cannot calculate the amount of profit in points because the opening price is missing and is only accessible by a accessing the history. This is it unnecessarily cumbersome. :(
I get the magic number from MqlTradeRequest &request: request.magic.
But it would be easier if you could find everything in trans!
Would be nice:
Можно ли добавить цену открытия и магический номер и, возможно, время открытия в структуру MqlTradeTransaction & trans функции OnTradeTransaction ()?
Я сохраняю различные значения индикатора при открытии позиции и хочу назначить эти значения для статистической оценки сразу после закрытия позиции, например, в зависимости от результата соответствующей переменной (структуры). Я не хочу перебирать историю в конце тестов, я могу сделать это проще!
Ключевыми категориями могут быть, например, прибыль или убыток, закрытые с помощью TP (fabs (trans.price-trans.price_tp)> ..) или SL и т. Д.
К сожалению, я не могу рассчитать сумму прибыли в пунктах, потому что цена открытия отсутствует и доступна только при доступе к истории. Это излишне громоздко. :(
Я получил магический номер от MqlTradeRequest и запрос: request.magic.
Но было бы проще, если бы вы могли найти все в транс!
Было бы здорово:
Почему нет? Кто не обеспечил?
Вот я и не понимаю, почему нет...
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Баг компилятора. Не учитывает константность возвращаемого значения в операторах.
Alexey Navoykov, 2019.01.04 03:53
Билд 1966, 64 бита. Компилятор не учитывает константность возвращаемого значения в операторах.
И в чем смысл? Что это даст?
Это даст то, что вам нужно. Старт теста только после появления 360 баров Д1.