Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не понятно! Разные условия открытия позиций. В описании дается так:
А в коде прописано вот так:
if(trade==true && d_c11>0) //Previous Day's Deviation is Positive
{
//LONG EURUSD
OrderSend(C1,OP_BUY,lot,MarketInfo(C1,MODE_ASK),3,0,0,"Hedge"+C1,MagicNumber1);
if (ticket1<0){verifyorder(C1,MagicNumber1,"LONG");}Sleep(5000);
//LONG USDCHF
OrderSend(C2,OP_BUY,lot,MarketInfo(C2,MODE_ASK),3,0,0,"Hedge"+C2,MagicNumber2);
if (ticket2<0){verifyorder(C2,MagicNumber2,"LONG");}Sleep(5000);
//SHORT GBPUSD
OrderSend(C3,OP_SELL,lot,MarketInfo(C3,MODE_BID),3,0,0,"Hedge"+C3,MagicNumber3);
if (ticket3<0){verifyorder(C3,MagicNumber3,"SHORT");}Sleep(5000);
//LONG AUDUSD
OrderSend(C4,OP_BUY,lot,MarketInfo(C4,MODE_ASK),3,0,0,"Hedge"+C4,MagicNumber4);
if (ticket4<0){verifyorder(C4,MagicNumber4,"LONG");}Sleep(5000);
}
if(trade==true && d_c11<0) //Previous Day's Deviation is Negative
{
//LONG EURUSD
OrderSend(C1,OP_SELL,lot,MarketInfo(C1,MODE_BID),3,0,0,"Hedge"+C1,MagicNumber1);
if (ticket1<0){verifyorder(C1,MagicNumber1,"SHORT");}Sleep(5000);
//LONG USDCHF
OrderSend(C2,OP_SELL,lot,MarketInfo(C2,MODE_BID),3,0,0,"Hedge"+C2,MagicNumber2);
if (ticket2<0){verifyorder(C2,MagicNumber2,"SHORT");}Sleep(5000);
//SHORT GBPUSD
OrderSend(C3,OP_BUY,lot,MarketInfo(C3,MODE_ASK),3,0,0,"Hedge"+C3,MagicNumber3);
if (ticket3<0){verifyorder(C3,MagicNumber3,"LONG");}Sleep(5000);
//LONG AUDUSD
OrderSend(C4,OP_SELL,lot,MarketInfo(C4,MODE_BID),3,0,0,"Hedge"+C4,MagicNumber4);
if (ticket4<0){verifyorder(C4,MagicNumber4,"SHORT");}Sleep(5000);
}
Т.е. в коде условия одинаковые для любого отклонения.
А как, всетаки, как должно быть?
Вероятно из-за этого сегодня позиции открылись неверно.
Не так ли должно быть для отрицательного отклонения
Не понятно! Разные условия открытия позиций. В описании дается так:
А в коде прописано вот так:
if(trade==true && d_c11>0) //Previous Day's Deviation is Positive
{
//LONG EURUSD
OrderSend(C1,OP_BUY,lot,MarketInfo(C1,MODE_ASK),3,0,0,"Hedge"+C1,MagicNumber1);
if (ticket1<0){verifyorder(C1,MagicNumber1,"LONG");}Sleep(5000);
//LONG USDCHF
OrderSend(C2,OP_BUY,lot,MarketInfo(C2,MODE_ASK),3,0,0,"Hedge"+C2,MagicNumber2);
if (ticket2<0){verifyorder(C2,MagicNumber2,"LONG");}Sleep(5000);
//SHORT GBPUSD
OrderSend(C3,OP_SELL,lot,MarketInfo(C3,MODE_BID),3,0,0,"Hedge"+C3,MagicNumber3);
if (ticket3<0){verifyorder(C3,MagicNumber3,"SHORT");}Sleep(5000);
//LONG AUDUSD
OrderSend(C4,OP_BUY,lot,MarketInfo(C4,MODE_ASK),3,0,0,"Hedge"+C4,MagicNumber4);
if (ticket4<0){verifyorder(C4,MagicNumber4,"LONG");}Sleep(5000);
}
if(trade==true && d_c11<0) //Previous Day's Deviation is Negative
{
//LONG EURUSD
OrderSend(C1,OP_SELL,lot,MarketInfo(C1,MODE_BID),3,0,0,"Hedge"+C1,MagicNumber1);
if (ticket1<0){verifyorder(C1,MagicNumber1,"SHORT");}Sleep(5000);
//LONG USDCHF
OrderSend(C2,OP_SELL,lot,MarketInfo(C2,MODE_BID),3,0,0,"Hedge"+C2,MagicNumber2);
if (ticket2<0){verifyorder(C2,MagicNumber2,"SHORT");}Sleep(5000);
//SHORT GBPUSD
OrderSend(C3,OP_BUY,lot,MarketInfo(C3,MODE_ASK),3,0,0,"Hedge"+C3,MagicNumber3);
if (ticket3<0){verifyorder(C3,MagicNumber3,"LONG");}Sleep(5000);
//LONG AUDUSD
OrderSend(C4,OP_SELL,lot,MarketInfo(C4,MODE_BID),3,0,0,"Hedge"+C4,MagicNumber4);
if (ticket4<0){verifyorder(C4,MagicNumber4,"SHORT");}Sleep(5000);
}
Т.е. в коде условия одинаковые для любого отклонения.
А как, всетаки, как должно быть?
Вероятно из-за этого сегодня позиции открылись неверно.
извините ребята, тут перевод с английского на русский был не прав.
Вот как должно быть:
отклонения(+) длинные позиции по EURUSD и USDCHF, и короткая по GBPUSD и длинная по AUDUSD.
В таком случае EURUSD хеджируется с помощью USDCHF, EURUSD - с помощью GBPUSD, USDCHF с помощью AUDUSD, а GBPUSD - с помощью AUDUSD.
"Т.е. в коде условия одинаковые для любого отклонения."
(trade==true && d_c11>0)
(trade==true && d_c11<0)
А это утверждение верно или нет
Все верно. Не верен перевод. На английском выглядит так
When the deviation of previous day for EURUD is negative, the EA enters with the SHORT EURUSD, SHORT USDCHF, LONG GBPUSD and SHORT AUDUSD
а на русском так
Когда отклонение за предыдущий день по EURUSD отрицательное, советник открывает короткие позиции по EURUSD и USDCHF, и длинные - по GBPUSD и AUDUSD
Тогда в коде эти места соответствуют логике системы
if(trade==true && d_c11<0) //Previous Day's Deviation is Negative
{
//LONG EURUSD
RefreshRates();
ticket1=OrderSend(C1,OP_SELL,lot,MarketInfo(C1,MODE_BID),3,0,0,"Hedge"+C1,MagicNumber1);
if (ticket1<0){verifyorder(C1,MagicNumber1,"SHORT");}Sleep(5000);
//LONG USDCHF
RefreshRates();
ticket2=OrderSend(C2,OP_SELL,lot,MarketInfo(C2,MODE_BID),3,0,0,"Hedge"+C2,MagicNumber2);
if (ticket2<0){verifyorder(C2,MagicNumber2,"SHORT");}Sleep(5000);
//SHORT GBPUSD
RefreshRates();
ticket3=OrderSend(C3,OP_BUY,lot,MarketInfo(C3,MODE_ASK),3,0,0,"Hedge"+C3,MagicNumber3);
if (ticket3<0){verifyorder(C3,MagicNumber3,"LONG");}Sleep(5000);
//LONG AUDUSD
RefreshRates();
ticket4=OrderSend(C4,OP_SELL,lot,MarketInfo(C4,MODE_BID),3,0,0,"Hedge"+C4,MagicNumber4);
if (ticket4<0){verifyorder(C4,MagicNumber4,"SHORT");}Sleep(5000);
Да все в порядке! Автор копировал комментарий из блока в блок и забыл исправить. Исправьте комментарий в соответствии с кодом, а в коде все правильно и в русской и в английской версии.
Да все в порядке! Автор копировал комментарий из блока в блок и забыл исправить. Исправьте комментарий в соответствии с кодом, а в коде все правильно и в русской и в английской версии.
Уже сделал.
скоро будет, готова
Немного отредактировал техзадание.
Готова, скоро новый советник будет на сайте!!!
Готова, скоро новый советник будет на сайте!!!
OK, спасибо! Ждем с нетерпением. Думаю, что правильно было бы разместить его в новой публикации.