Логично выдавать ошибку, если все цены модифицированной позиции и открытой позиции совпадают.
Не понял, объясните!!!
Вот скрин по примеру, красная верхняя это не состоявшийся стоп:
2012.09.11 21:58:27 2012.01.04 17:50:01 failed modify sell 2.00 EURUSD sl: 1.29405, tp: 1.28148 (было) -> (хотите) sl: 1.29405, tp: 1.28148 [Invalid stops]
Понял. Странно, вроде я проверяю эту ситуацию, сейчас поправим.
Ну как я и говорил, данную проверку выполнял:
bool Modify(double iSl = 0,double iTp = 0){ if(!m_symbol.RefreshRates()) return(false); double sl = m_position.StopLoss(); double tp = m_position.TakeProfit(); if(iSl < sl || (sl == 0 && iSl != 0)){ if(iSl - m_symbol.StopsLevel() * m_symbol.Point() > m_symbol.Ask() && iSl <= m_position.PriceOpen()) if(ModifyPosition(iSl,tp))ret = true; } ...
Ничего не понимаю....
Поизучайте вопрос корректного сравнения вещественных чисел.
Проще всего перед любыми сравнениями перейти к целым числам:
int PriceINT = PriceDOUBLE / Point + 0.1;
Поизучайте вопрос корректного сравнения вещественных чисел.
Проще всего перед любыми сравнениями перейти к целым числам:
Жестоко однако, на счет правил то я понимаю, просто надоело чесать правой рукой левое ухо!!!
Когда наконец прекратиться проблема с вещественными переменными.
Жестоко однако, на счет правил то я понимаю, просто надоело чесать правой рукой левое ухо!!!
Когда наконец прекратиться проблема с вещественными переменными.
https://www.mql5.com/ru/forum/3872#comment_208855 . Имхо. Я не продвигаю именно эту функцию, обратите внимание на идею.
P.S: это может не столько про Ваш случай, т.к. мне кажется, что можно обойтись нормализацией NormalizeDouble().
Понял. Странно, вроде я проверяю эту ситуацию, сейчас поправим.
Ну как я и говорил, данную проверку выполнял:
Ничего не понимаю....
Хорошей практикой считается перемещать стоп не по каждому тику, а с некоторым шагом.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Товарищи нужна Ваша квалифицированная помощь и совет. Ниже представлена функция модификации стопов позиции, вызов завершается ошибкой в некоторых случаях, что как сами понимаете не хорошо и засоряет лог.
Ткните пальцем где моя ошибка!!!
Результат лога ниже, не понимаю что происходит и где проблема, ткните пальцем в мою ошибку. В логе пример ошибки при модификации позиции SELL на стоплос .
Заранее всем спасибо!