// Помогите разобраться новичку. :)
Что я делаю не так? Почему не срабатывают ордера?
if (MA1 == true )
{
Alert ("ТРЕНД НА РОСТ");
//---продаём_купленныей_SELL
if (indexOrderSell != 0)
{
OrderClose( indexOrderSell, 0.1, Bid, 2 );
Alert("Продаём Купленный Ордер SELL = ", Bid);
}
//---покупаем_BAY
indexOrderBay = OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-1000*Point,Bid+1000*Point);
Alert("Ордер BAY = ", Ask);
}
//ТРЕНД НА ПАДЕНИЕ
if ( MA2 == true)
{
Alert ("ТРЕНД НА ПАДЕНИЕ");
//---продаём_купленыый_BAY
if (indexOrderBay != 0)
{
OrderClose(indexOrderBay, 0.1, Ask, 2 );
Alert("Продаём Купленный Ордер BAY = ", Ask);
}
//---покупаем_SELL
indexOrderSell= OrderSend(Symbol(),OP_SELL,0.1,Ask,3,Bid-1000*Point,Bid+1000*Point);
Alert("Ордер SELL = ", Ask);
}
Во-первых: OrderSend(OP_SELL...) должен быть по цене Bid.
Во-вторых: OrderClose для ордеров OP_BUY должен быть по цене Bid.
В-третьих: если у Вас пятизначный ДЦ, то проскальзывание следует увеличить в 5-10 раз.
Во-первых: OrderSend(OP_SELL...) должен быть по цена Bid.
Во-вторых: OrderClose для ордеров OP_BUY должен быть по цене Bid.
В-третьих: если у Вас пятизначный ДЦ, то проскальзывание следует увеличить в 5-10 раз.
Это я уже поправил.
Что означает "пятизначный ДЦ"? и как мне увеличить проскальзывание "в 5-10 раз"
Код с поправками:
Во все условия if фхожу проверял сообщениями.
Какие приказы работают указано в коде:
//ТРЕНД НА РОСТ
if (CmpDoubles(MA142, MA72) == true && CmpDoubles (MA71, MA141) == true)
{
Alert ("ТРЕНД НА РОСТ");
//---продаём_купленныей_SELL
if (indexOrderSell != 0)
{
OrderClose( indexOrderSell, 0.1, Ask, 3 );
Alert("Продаём Ордер SELL = ", Ask);
}
//---покупаем_BAY-РАБОТАЕТ
indexOrderBay = OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-1000*Point,Bid+1000*Point); //РАБОТАЕТ
Alert("Покупаем Ордер BAY = ", Ask);
}
//---если график 14 бара 2 был внизу то тренд на падение
//ТРЕНД НА ПАДЕНИЕ
if (CmpDoubles(MA72, MA142) == true && CmpDoubles (MA141, MA71) == true)
{
Alert ("ТРЕНД НА ПАДЕНИЕ");
//---продаём_купленыый_BAY-работает
if (indexOrderBay != 0)
{
OrderClose(indexOrderBay, 0.1, Bid, 3 ); //РАБОТАЕТ
Alert("Продаём Ордер BAY = ", Bid);
}
//---покупаем_SELL
indexOrderSell= OrderSend(Symbol(),OP_SELL,0.1,Bid,3,Bid-1000*Point,Bid+1000*Point);
Alert("Покупаем Ордер SELL = ", Bid);
}
Диллинговый центр 4 значный.
С проскальзыванием понял.
Да зачем время тратить код весь прокручивать. Всё условия я жу полностью проверил.
Я же говорю что проблема только в этом куске.
Ордера купить BAY на покупку и продажу срабатывают.
А ордера SELL на продажу покупку не срабатывают.
Причём здесь условия?
Диллинговый центр 4 значный.
С проскальзыванием понял.
Да зачем время тратить код весь прокручивать. Всё условия я жу полностью проверил.
Я же говорю что проблема только в этом куске.
Ордера купить BAY на покупку и продажу срабатывают.
А ордера SELL на продажу покупку не срабатывают.
Причём здесь условия?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
// Помогите разобраться новичку. :)
Что я делаю не так? Почему не срабатывают ордера?
if (MA1 == true )
{
Alert ("ТРЕНД НА РОСТ");
//---продаём_купленныей_SELL
if (indexOrderSell != 0)
{
OrderClose( indexOrderSell, 0.1, Bid, 2 );
Alert("Продаём Купленный Ордер SELL = ", Bid);
}
//---покупаем_BAY
indexOrderBay = OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-1000*Point,Bid+1000*Point);
Alert("Ордер BAY = ", Ask);
}
//ТРЕНД НА ПАДЕНИЕ
if ( MA2 == true)
{
Alert ("ТРЕНД НА ПАДЕНИЕ");
//---продаём_купленыый_BAY
if (indexOrderBay != 0)
{
OrderClose(indexOrderBay, 0.1, Ask, 2 );
Alert("Продаём Купленный Ордер BAY = ", Ask);
}
//---покупаем_SELL
indexOrderSell= OrderSend(Symbol(),OP_SELL,0.1,Ask,3,Bid-1000*Point,Bid+1000*Point);
Alert("Ордер SELL = ", Ask);
}