
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
На чивинг
Попробуйте это:
#property link "http://www.metaquotes.net/"
#property show_inputs
bool result;
extern double OverSymbolDel = 1; //0:FASLE ; 1: TRUE
//+------------------------------------------------------------------+
//| script "delete pending order" |
//+------------------------------------------------------------------+
int start()
{
for (int number=OrdersTotal()-1; number >= 0; number--)
{
OrderSelect(number,SELECT_BY_POS,MODE_TRADES);
if((OrderType()==OP_BUY) || (OrderType()==OP_SELL) ) continue;
if (OverSymbolDel ==0&& Symbol()==OrderSymbol() ) delPending();
if (OverSymbolDel ==1) delPending();
}
}
//+------------------------------------------------------------------+
void delPending()
{
OrderPrint();
int ticket =OrderTicket();
result=OrderDelete(ticket);
if (!result) Print("Error when delete Order ", GetLastError() );
}if ( (OverSymbolDel ==0 ) && (Symbol()==OrderSymbol() ) delPending();
изменить на
if ( (OverSymbolDel ==0 ) && (Symbol()==OrderSymbol() )) delPending();
GetClientRect???
Как мне поступить, если я хочу получить клиентские координаты графика?
Я хочу узнать правые нижние координаты без использования OBJPROP_CORNER.
С наилучшими пожеланиями.
Eu h1 ea
пожалуйста, помогите мне изменить лучший
Помогите с логикой
Привет всем,
Я хотел бы получить небольшую помощь с логикой кода. Я пытаюсь создать советника системы, на которую я смотрю, но я немного озадачен тем, как написать логику для сигналов покупки и продажи. Вот псевдологика того, что я хочу превратить в MQL:
ЛОГИКА ПОКУПКИ:
// Once we have a "GET READY" signal the following conditions need to be true
// in order for the system to create a "BUY_SIGNAL".
// Note: the following conditions do not necessarily have to become true on the exact same bar,
but need to trigger true within + or - 2 bars of the "GET READY" bar.
( CLOSE > MA3 ) // Price closes above a MA
( CCI Crosses above the ZERO line ) // CCI crosses up above zero
( Fast Stochastic crosses above Slow Stochastic ) // Stochastic triggers to the up sideЛогика продажи прямо противоположна логике покупки.
Мне не нужен полный код эксперта, только логика, преобразованная в MQL 'IF' и 'LOOP' операторы для отработки сигнала. Я думаю, что смогу разобраться с кодом OpenOrder и т.д... из многих примеров, уже приведенных в этой теме.
Любая помощь, которую кто-либо может оказать, будет очень признательна.
Спасибо,
Moxy
Лучше всего заглянуть в файл справки метаэдитора.
Посмотрите на такие функции, как iMa, iStochastic и iCCI. В них есть примеры, и если вы объедините их с информацией, которую вы получите, посмотрев код любого советника, вы легко справитесь с задачей.
Удачи
Lux
Лучше всего посмотреть в файле помощи метаредактора.
Посмотрите на такие функции, как iMa, iStochastic и iCCI. В них есть примеры, и если вы объедините их с информацией, которую вы получите, просматривая код любого советника, вы легко справитесь с задачей.
Удачи
LuxПривет, Лакс,
Спасибо за ответ. Я могу разработать отдельные утверждения iMA и т.д... проблема в том, как ссылаться на различные временные бары после срабатывания сигнала. Например... Если у меня есть сигнал GET READY, мне нужно посмотреть на 2 бара до и 2 бара после (всего 5 баров) для других индикаторов, чтобы подтвердить, что у меня есть СИГНАЛ ПОКУПКИ на открытии следующего бара. Не уверен, есть ли в моих словах смысл!
Думаю, да... как мне структурировать необходимые циклы FOR и т.д., когда мне нужно ссылаться на бары как до, так и после обрабатываемого бара.
С уважением,
Moxy
Привет Лакс,
Спасибо за ответ. Я могу разработать отдельные заявления iMA и т.д.... проблема в том, как ссылаться на различные временные бары после срабатывания сигнала. Например... Если у меня есть сигнал GET READY, мне нужно посмотреть на 2 бара до и 2 бара после (всего 5 баров) для других индикаторов, чтобы подтвердить, что у меня есть СИГНАЛ ПОКУПКИ на открытии следующего бара. Не уверен, есть ли в моих словах смысл!
Думаю, да... как мне структурировать необходимые циклы FOR и т.д., когда мне нужно ссылаться на бары как до, так и после обрабатываемого бара.
С уважением,
MoxyВы делаете это, используя переменную shift в iMA(). Вы также можете сделать это с помощью значений Open, High, Low, Close, т.е. Close[3], который находится на расстоянии 3 баров от текущего бара.
Скользящее среднее из движений
Мне нужна небольшая помощь с кодом, я хочу определить набор средних движений вокруг MA, поэтому от самого старого BAR я ищу движения выше и ниже, помещаю их в массив, затем усредняю этот массив.
Вот код, с которого я начинаю, ищу немного помощи, чтобы сделать это.
double AverageMove()
{
int cbars = iBars(Symbol(),EntryTimeFrame);
int counted_bars = 0,RangeCounter=0,ndx=0,iLimit=0;
double retval,averagemove,pHValue,pLValue,MAvalue,RangeValue[],EntryPoint,cHigh,cLow;
bool reset,TradeShort,TradeLong;
iLimit=Bars-1;
if(Symbol() != "AUDNZD") return(0);
for(ndx=0; ndx<iLimit; ndx++)
{
MAvalue = iMA(Symbol(),EntryTimeFrame,EntryMAInterval,0,MovingAverageType,PRICE_MEDIAN,ndx);
pHValue = High[ndx];
pLValue = Low[ndx];
if(MAvalue pLValue)
{
if(Symbol() =="AUDNZD") Print("MAValue="+MAvalue+" pHValue="+pHValue+" plValue="+pLValue);
сброс = true;
if(EntryPoint > 0 && cHigh > 0)
{
RangeCounter++;
RangeValue[RangeCounter]=cHigh - EntryPoint;
}
if(EntryPoint > 0 && cLow > 0)
{
RangeCounter++;
RangeValue[RangeCounter]=EntryPoint - cLow;
}
EntryPoint = MAvalue;
}
if(pHValue < MAvalue && reset) TradeShort = true;
if(pLValue > MAvalue && reset) TradeLong = true;
if(TradeLong)
{
reset = false;
cHigh = pHValue;
}
if(TradeShort)
{
reset = False;
cLow = pLValue;
}
}
ArraySetAsSeries(RangeValue,true);
retval=iMAOnArray(RangeValue,RangeCounter,13,1,PRICE_MEDIAN,0);
Print("Average Move "+retval);
}
Я хотел бы узнать клиентскую зону на графике.
Здравствуйте,
Я хотел бы узнать клиентскую зону на графике.
Пожалуйста, подскажите мне.
Предполагая, что точка левого верхнего угла - (0,0), пожалуйста, сообщите мне координаты правого нижнего.
В этом случае ObjectSet("",OBJPROP_CORNER,3) не должен использоваться.
Большое спасибо и наилучшие пожелания,
Мокси,
Если я правильно вас понял, то вам нужно будет закодировать это построчно в советнике.
пример
MA1, индекс-1 раньше
MA1, индекс сейчас
MA1, индекс+1 после
у вас есть основы