Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Код сам по себе очень сырой и еще долго не будет работать.
Что это - if(STOPLEVEL<NormalizeDouble(tpbuy,0)) ?
Почему проскальзывание нулевое?
Что б Take Profit был больше минимального. Округление до целых.
Что б Take Profit был больше минимального. Округление до целых.
tpbuy=NormalizeDouble((High[1]-Open[1]),4)*NormalizeDouble(kbuy,2);
Это в районе ста пунктов, т.е. ~0.01. В Вашем случае округление даст 0.
tpbuy=NormalizeDouble((High[1]-Open[1]),4)*NormalizeDouble(kbuy,2);
Это в районе ста пунктов, т.е. ~0.01. В Вашем случае округление даст 0.
Понял ход мыслей, ошибку признаю, буду исправляться
Может быть задумано было так?:
Я бы ещё заменил цифру 4 на Digits в OrderSend() т.к. ДЦ бывают и с 5-знаком:
И навтыкайте везде принтов для трассировки, будете видеть где и почему ордера не открываются.
Вы уверены что данная конструкция соответствует тому что Вы закладывали в неё?:
Может быть задумано было так?:
Я бы ещё заменил цифру 4 на Digits в OrderSend() т.к. ДЦ бывают и с 5-знаком:
И навтыкайте везде принтов для трассировки, будете видеть где и почему ордера не открываются.
Спасибо, проблема решена.
мне кажется выражение:
ибо в МКЛ4 выражение 0 и 0.0 и 0.0000 абсолютно разные :-) при проверке некоторых индикаторах я пришел к такому выводу.
Candid:
Неправильным выражение можно назвать только тогда, когда оно не обеспечивает нужный результат. В данном случае страховку от ошибки zero divide То есть я думаю, что оно правильное.
Другая сторона - насколько оно оптимально. У нас здесь res имеет тип double. Я предполагаю, что при сравненни с 0 (тип int) сначала будет сделано приведение типов, то есть 0 будет превращён в 0.0 . То есть сравнивая double с int вы неявно закладываете в код лишнюю операцию. Впрочем это лишь моё предположение. Не желаете проверить?
Куда ж товарищ пропал-то, сейчас же тема закроется :). Неужели его истина совсем не интересует? :)
На самом деле по скорости счёта вариант сравнения переменной double с константой типа int совершенно эквивалентен сравнению с константой типа double, я полагаю что это заслуга компилятора, делающего преобразование типов на этапе компиляции. Убедиться в эквивалентности можно с помощью простейшего скрипта
Но я хотел бы получить ещё какие-то свидетельства в пользу действительного нетривиального утверждения, что, цитирую, в МКЛ4 выражение ... 0.0 и 0.0000 абсолютно разные