То же самое скажу. С логикой не дружите. В чём проблема рассчитать сразу начальный лот, исходя из свободных средств и значения риска (вроде писалось про 3%)? Зачем так через одно место всё делать?
Берёте значение свободной маржи, умножаете на риск, делите на 100 и на значение залога для 1 лота - вот простейшая формула для расчёта лота с указанным процентом от свободной маржи. Ну ещё шаго изменения лота надо учесть и предотвратить выход за пределы мин-макс лота, разрешённого ДЦ:
Я же говорю советник торгует в небольшом промежутке времени в котором есть вероятность что откроется 9 ордеров поочередно противоположных перекрывающих друг друга и каждый следующий умножается на 2, поэтому маржа может не выдеражать и последний отложенный ордер может не открыться, по этому и надо расчитать с последнего максимально возможного лота. Я посчитал что самое оптимально число ордеров за промежуток в 5-10 мин 9 ордеров .В общем мне нужно расчитать маржу на случай если все ордера откроются и исходя из полученных данных в обратном порядке расчитать первый лот.
ребят где я не правильно прописал? вроде с примера брал, подскажите пожалуйста как правильно прописать код, чтобы ордер закрывался
на обратных условиях покупки? я уже весь мозг сломал
Если ордер выбирается по тикету перебор в цикле не нужен. выложите полный код советника, по куску не понятно где вы допускаете ошибку. Да и код выкладывайте правильно, есть кнопочка SRC для вставки кода в сообщение.
#property copyright"Copyright 2017, MetaQuotes Software Corp."#property link"https://www.mql5.com"#property version"1.00"#property strict//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+int ticketB,ticketS;
voidOnTick()
//------------------------------------------------------------------------------------------------
{
double p = iClose("EURUSD",PERIOD_M15,0); //показание текущей цены double r = iRSI ("EURUSD",PERIOD_M15,21,PRICE_CLOSE,0); //значение индюка RSIdouble m = iMA ("EURUSD",PERIOD_M15,89,0,MODE_EMA,PRICE_CLOSE,0); //значение индюка МАint OrderCount = 1;
//---------------ПОДСЧЕТ ОРДЕРОВ------------------------------------------------------------------if(OrdersTotal() >= OrderCount)
{
return;
}
//-------------ОТКРЫТИЕ ОРДЕРА НА ПОКУПКУ--------------------------------------------------------------------/*if(r > 50 && p > m) //условия открытия ордера на покупку
{
ticketB = OrderSend(Symbol(),OP_BUY,0.1,Ask,5,0,0,"",111,0,Green);
}
//------------ЗАКРЫТИЕ ОРДЕРА НА ПРОДАЖУ--------------------------------------------------------
if(r<50 && p<m)
{
for(int i=1; i<=OrdersTotal(); i++)
{
if(OrderSelect(ticketB,SELECT_BY_TICKET)==true)
{
if(OrderType()==OP_BUY)
{
ticketB = OrderClose(OrderTicket(),0.1,Bid,5,Red);
}
}
}
}*///------------------ОТКРЫТИЕ ОРДЕРА НА ПРОДАЖУ---------------------------------------------------------if(r < 50 && p < m) //условия открытия ордера на продажу
{
ticketS = OrderSend(Symbol(),OP_SELL,0.1,Bid,5,0,0,"",111,0,Blue);
}
//---------------------ЗАКРЫТИЕ ОРДЕРА НА ПРОДАЖУ---------------------------------------------------------if(r>50 && p>m)
{
for(int i=1; i<=OrdersTotal(); i++)
{
if(OrderSelect(ticketS,SELECT_BY_TICKET)==true)
{
if(OrderType()==OP_SELL)
{
ticketS = OrderClose(OrderTicket(),0.1,Ask,5,Red);
}
}
}
}
}
//+------------------------------------------------------------------+
спасибо за SRC), вот так выглядит все что смог написать, тс выглядит так продажа должна происходит когда свеча закрылась ниже машки и rsi ниже 50, и закрытие ордера на противоположных условиях, и одновременно после закрытия должна происходит покупка и после закрытие, то одному ордеру и не больше и так далее циклично...но сейчас у меня открывается один ордер и все, и стопы не работают...
funnyrain8: спасибо за SRC), вот так выглядит все что смог написать, тс выглядит так продажа должна происходит когда свеча закрылась ниже машки и rsi ниже 50, и закрытие ордера на противоположных условиях, и одновременно после закрытия должна происходит покупка и после закрытие, то одному ордеру и не больше и так далее циклично...но сейчас у меня открывается один ордер и все, и стопы не работают...
переписал в своем стиле, надеюсь разберешься, если чего не понятно будет спрашивай
переписал в своем стиле, надеюсь разберешься, если чего не понятно будет спрашивай
...
оу, я думал я практически все написал кроме закрытия а мне еще учиться и учиться...спасибо большое теперь хоть на пример от чего идти дальше можно будет...жесть, еще раз спасибо)
Здравствуйте. Я скачала программу Метатрейдер 5. Я подписалась на 2 сигнала. Баланс на счете у меня положительный 20$. Пробую установить виртуальный хостинг у меня ничего не получается. Нажимаю навигатор- подключиться к торговому счету ,у меня даже в таблице нет такой вкладки виртуальный хостинг. Высылаю скриншоты. Как мне подключиться к виртуальному хостингу?
Жанна Платонова: Здравствуйте. Я скачала программу Метатрейдер 5. Я подписалась на 2 сигнала. Баланс на счете у меня положительный 20$. Пробую установить виртуальный хостинг у меня ничего не получается. Нажимаю навигатор- подключиться к торговому счету ,у меня даже в таблице нет такой вкладки виртуальный хостинг. Высылаю скриншоты. Как мне подключиться к виртуальному хостингу?
Здравствуйте. У меня такой вопрос - на маке (sierra) во всех поставленных (через вино) от разных компаний платформах мт4 один и тот же глюк - терминал если его освобождаешь со штатного места внизу чтобы он передвигался как свободное окно - он съёживается и работать через его совершенно невозможно. Отключение функции автоарранжир никаких результатов не даёт . Вернуть терминал на прежнее место совершенно невозможно - т.е. он просто не прикрепляется и больше не раскрывается. У меня вопрос - может кто знает сочетание клавиш или кнопку для возврата всего интерфейса на свои штатные места. С ув.
То же самое скажу. С логикой не дружите. В чём проблема рассчитать сразу начальный лот, исходя из свободных средств и значения риска (вроде писалось про 3%)? Зачем так через одно место всё делать?
Берёте значение свободной маржи, умножаете на риск, делите на 100 и на значение залога для 1 лота - вот простейшая формула для расчёта лота с указанным процентом от свободной маржи. Ну ещё шаго изменения лота надо учесть и предотвратить выход за пределы мин-макс лота, разрешённого ДЦ:
Я же говорю советник торгует в небольшом промежутке времени в котором есть вероятность что откроется 9 ордеров поочередно противоположных перекрывающих друг друга и каждый следующий умножается на 2, поэтому маржа может не выдеражать и последний отложенный ордер может не открыться, по этому и надо расчитать с последнего максимально возможного лота. Я посчитал что самое оптимально число ордеров за промежуток в 5-10 мин 9 ордеров .В общем мне нужно расчитать маржу на случай если все ордера откроются и исходя из полученных данных в обратном порядке расчитать первый лот.
}
ребят где я не правильно прописал? вроде с примера брал, подскажите пожалуйста как правильно прописать код, чтобы ордер закрывался
на обратных условиях покупки? я уже весь мозг сломал
}
ребят где я не правильно прописал? вроде с примера брал, подскажите пожалуйста как правильно прописать код, чтобы ордер закрывался
на обратных условиях покупки? я уже весь мозг сломал
Как то так
}
ребят где я не правильно прописал? вроде с примера брал, подскажите пожалуйста как правильно прописать код, чтобы ордер закрывался
на обратных условиях покупки? я уже весь мозг сломал
Если ордер выбирается по тикету перебор в цикле не нужен. выложите полный код советника, по куску не понятно где вы допускаете ошибку. Да и код выкладывайте правильно, есть кнопочка SRC для вставки кода в сообщение.
спасибо за SRC), вот так выглядит все что смог написать, тс выглядит так продажа должна происходит когда свеча закрылась ниже машки и rsi ниже 50, и закрытие ордера на противоположных условиях, и одновременно после закрытия должна происходит покупка и после закрытие, то одному ордеру и не больше и так далее циклично...но сейчас у меня открывается один ордер и все, и стопы не работают...
переписал в своем стиле, надеюсь разберешься, если чего не понятно будет спрашивай
...
переписал в своем стиле, надеюсь разберешься, если чего не понятно будет спрашивай
...
оу, я думал я практически все написал кроме закрытия а мне еще учиться и учиться...спасибо большое теперь хоть на пример от чего идти дальше можно будет...жесть, еще раз спасибо)
Здравствуйте. Я скачала программу Метатрейдер 5. Я подписалась на 2 сигнала. Баланс на счете у меня положительный 20$. Пробую установить виртуальный хостинг у меня ничего не получается. Нажимаю навигатор- подключиться к торговому счету ,у меня даже в таблице нет такой вкладки виртуальный хостинг. Высылаю скриншоты. Как мне подключиться к виртуальному хостингу?
Щёлкните справку в главном меню.