Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
о коде mql4
Я хочу вывести на текущий график максимальную и минимальную цену.
но я не знаю, как написать код в моем индикаторе на MQL4.
спасибо большое!
Код для перемещения стоплосса?
Привет всем,
В данный момент я кодирую советника для автоторговли, он близится к завершению, но я не могу понять, как передвинуть стоплосс в открытой сделке. Я размещаю свой код здесь, если кто-то может указать, что я делаю неправильно, я был бы очень признателен.
Это часть кода, которая открывает LONG позицию:
{
if(//long entry criteria met)
{
if (priorbartime == Time[0])
return(0);
priorbartime = Time[0];
Alert("Long Signal");
ObjectCreate(arrowlong, OBJ_ARROW, 0, Time[0], Open[0], 0, 0, 0, 0);
ObjectSet(arrowlong, OBJPROP_ARROWCODE, 233);
ObjectSet(arrowlong, OBJPROP_COLOR, Aqua);
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Ask-StopLoss*Point,Ask+TakeProfit*Point,"am crossing",16677,0,Green); // HDB CHANGED Close TO Ask and SlipPage to 0
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
}
else Print("Error opening BUY order : ",GetLastError());
return(0);
}
}
[/PHP]
then once the trade is open I want to manage it by moving stop to -5 when the trade is +15, and by moving stop to b/e when trade is +20. this is the code i have come up with so far but it doesnt seem to be working:
[PHP]
total=OrdersTotal();
if(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_BUY && OrderSymbol()==Symbol())
{
if(Bid-OrderOpenPrice()==Point*15)
{
OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-Point*5,OrderTakeProfit(),0,Blue);
return(0);
}
if(Bid-OrderOpenPrice()==Point*20)
{
OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,Blue);
return(0);
}
}
}
}
Как уже говорилось, это все для LONG позиций.
Спасибо за любую помощь!
divergence_trader
Многие люди спрашивали об этом уже много раз.
Так что читайте:
- этот пост,
- этот и
- этот поток Codersguru.
Спасибо newdigital, я просмотрел много тем на SBFX, metaquotes и здесь, но не смог найти то, что искал, надеюсь, эти помогут!
Попробуйте это:
total=OrdersTotal();
if(total>0){
for(cnt=0;cnt<total;cnt++){
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_BUY && OrderSymbol()==Symbol()){
if(Bid-OrderOpenPrice()>=Point*15 && Bid-OrderOpenPrice()<Point*20 && OrderStopLoss()< OrderOpenPrice()-5*Point){
OrderModify(OrderTicket(),OrderOpenPrice()-Point*5,OrderTakeProfit(),Blue);
}
if(Bid-OrderOpenPrice()>=Point*20 && OrderStopLoss()< OrderOpenPrice()){
OrderModify(OrderTicket(),OrderOpenPrice(),OrderTakeProfit(),Blue);
}
}
}
}как эти
код уровней MA
привет
Я пытаюсь написать код уровней MA, но он не работает ...
кто-нибудь может сказать мне, как я могу это сделать, пожалуйста.
спасибо
привет
я пытаюсь написать код уровней MA, но он не работает ...
кто-нибудь может подсказать мне, как я могу это сделать, пожалуйста.
спасибоВы можете использовать индикатор Vegas Currancy Daily в качестве руководства. См. вложение.
Keris
Попробуйте это:
Спасибо, Николишен, ваш код работает отлично. До сих пор не было возможности протестировать его на живом рынке, но все работает отлично. еще раз спасибо!
Запрос: Код советника для удвоения размера лота после убыточной сделки.
Я хочу знать, есть ли способ указать советнику увеличить размер лота, если последняя сделка закрылась в убыток (система мартингейла), и использовать обычный размер лота, если последняя сделка закрылась в прибыль. Он должен иметь возможность использовать микро-лоты. Есть ли способ сделать это?