Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Выше просто пояснил почему:
А здесьиспользуйте флаги, либо другие прибамбасы, чтобы советник ставил только один ордер. Код советника немного усложнится, но будет работать так как вы хотите.
Я отслеживал движение цены и на тесте и на реале, цена фиксируется как и все другие, но он игнорирует постановку ордера!!!тут дело не в "=="
Так ведь код написан правильно ПОЧЕМУ НЕ ХОЧЕТ работать нормально???
Еще раз - цена часто проскакивает
допустим 1,3430 то ставим
Bid = 1,3426
Bid = 1,3428
Bid = 1,3429
Bid = 1,3431
Bid = 1,3432
Ждем условие Price==Bid. И почему "он иногда как-то точно одну ставку игнорирует", и "ПОЧЕМУ НЕ ХОЧЕТ работать нормально???" :)))
Владимир, вы задаете простой вопрос, у которого около 100 вариантов ответов, почему... постарайтесь сами определить ошибки, с помощью функции Print().
Вот несколько: ордера BUY, SELL открываются по разным ценам, по Ask и Bid.
Сложнее выставлять ордера по точной цене, значительно легче через n-пунктов от предыдущего... да будут расхождения между сериями, возможно не 10 пунктов, но для вас принципиально, когда вы меняете в обменике баксы на рубли по 29.57 или по 29.58 ...
вполне возможен такой вариант
1.3426
1.3436
Котировки 1.3430 - просто не было и все тут. И если условие стоит на абсолютное равенство - то ордер не выставится по данной цене, т.к. такой цены не было в потоке.
(Собственно об этом вам выше уже писали, но вы почему то упорно не хотите этого понять).
ЗЫ: кроме того, изобретение и создание стратегий основанных на мгновенном исполнении именно по какой то конкретной цене вплоть до одного пункта - лишено какого либо смысла,и является бесполезной тратой времени и сил. Это будет работать только в тестере. Даже на демо будет давать сбои, а на реале вообще работать не будет.
Так ведь код написан правильно ПОЧЕМУ НЕ ХОЧЕТ работать нормально???
Кстати, такая же фигня была!Сравнивал разницу между старой ценой и с новой с каким-то конкретным значением по "==", вообще не хотел ордера выставлять.
Alert() и Print() говорят мол, что значения равны, все нормально.
Как программисту было вообще не понятно, что за ерунда.
Поставил ">=", работает как часы.
Ну, типа, плюс - минус трамвайная остановка. В моей стратегии пару пунктов роли не играет :)
Кстати, такая же фигня была!Сравнивал разницу между старой ценой и с новой с каким-то конкретным значением по "==", вообще не хотел ордера выставлять.
Alert() и Print() говорят мол, что значения равны, все нормально.
Как программисту было вообще не понятно, что за ерунда.
Поставил ">=", работает как часы.
Ну, типа, плюс - минус трамвайная остановка. В моей стратегии пару пунктов роли не играет :)
Не работает потому, что при проверке равенства (==) цена должна быть равна с условием, причем с точность пункта (или десятой пункта (для пятизнака)). В реальности же, попасть точно в нужную цену очень сложно. К примеру: if(Bid == 1.36317){Alert("Попал! :)");}. А теперь нужно ждать когда цена будет именно 1.36317 и не больше не меньше.