Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Привет, Денис,
Прежде всего, я хотел бы поблагодарить вас за эту замечательную библиотеку, она очень облегчает жизнь таким начинающим пользователям, как я. Я не являюсь профессиональным программистом, но примерно могу понять, подправить и немного отладить код.
Я использую ваш пример кода из "Test_Hedge_Properties" в качестве функции в советнике, который я тестирую, и обнаружил, что после закрытия всех (2) позиций, когда я вызываю функцию
"Update_Hedge_Info", после закрытия первого тикета, переменная, которая подсчитывает количество позиций, "hdg_number_of_pos_total" обновляется с (2) до (1).
Однако после закрытия второго тикета переменная по-прежнему показывает (1), она не обновляется до (0).
Я не уверен, правильно ли я ее закодировал, но ваш добрый вклад и опыт будут очень признательны.
Я прилагаю советник и скриншот.
Спасибо и с уважением.
Я использую hedge_info.Margin() для расчета текущей маржи в моем советнике.
Меня интересует следующая (*) строка в CHedgePositionInfo::AveragePrice внутри "switch(curr_quote_type) ... case QUOTE_TYPE_CROSS:".
Я использую EURCHF, а major_symbol - USDEUR. Так как USDEUR не поддерживается 99,9% всех форекс-брокеров, а является максимум кроссом, определенным пользователем, следующая команда SymbolSelect приводит к сообщению об ошибке во время бэктестинга. Возможно, это проблема брокера, но в моем случае это приводит к резкому прерыванию работы тестера стратегий, поскольку активным символом теперь является USDEUR, а не пара, на которой я изначально запускал тестер стратегий (EURCHF).
Так что в моем случае помогло удаление USDEUR из просмотра рынка в конце CHedgePositionInfo::AveragePrice by: