Saluti, per favore non prendetemi troppo a calci) Ho un EA. Voglio implementare in esso la funzione di aprire una posizione, se su diverse coppie di valute, una barra con indice 1, ha la stessa direzione (rialzista o ribassista). Sto cercando di farlo con iclose e iopen.
Все происходит в bool-ой функцие.
Хотел реализовать конструкцию следующего вида:
if ((iOpen(NULL, PERIOD_CURRENT, 1)>iClose(NULL, PERIOD_CURRENT, 1))&&(iOpen("EURGBP", PERIOD_CURRENT, 1)>iClose("EURGBP", PERIOD_CURRENT, 1))&&(iOpen("EURJPY", PERIOD_CURRENT, 1)>iClose("EURJPY", PERIOD_CURRENT, 1)))
returnfalse;
elseif ((iOpen(NULL, PERIOD_CURRENT, 1)<iClose(NULL, PERIOD_CURRENT, 1))&&(iOpen("EURGBP", PERIOD_CURRENT, 1)<iClose("EURGBP", PERIOD_CURRENT, 1))&&(iOpen("EURJPY", PERIOD_CURRENT, 1)<iClose("EURJPY", PERIOD_CURRENT, 1)))
returnfalse;
Но ничего не получилось, и открываются позиции при любой комбинации баров с индексом 1.
Но работает следующая конструкция.
if(iOpen(NULL, PERIOD_CURRENT, 1)>iClose(NULL, PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURGBP", PERIOD_CURRENT, 1)>iClose("EURGBP", PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURJPY", PERIOD_CURRENT, 1)>iClose("EURJPY", PERIOD_CURRENT, 1))
returnfalse;
Тут советник правильно находит комбинацию из баров. Но таким способом можно искать либо комбинации из бычьих баров, либо медвежьих.
Ибо код такого вида не работает.
if(iOpen(NULL, PERIOD_CURRENT, 1)>iClose(NULL, PERIOD_CURRENT, 1))
{
if(iOpen("EURGBP", PERIOD_CURRENT, 1)>iClose("EURGBP", PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURJPY", PERIOD_CURRENT, 1)>iClose("EURJPY", PERIOD_CURRENT, 1))
returnfalse;
}
elseif(iOpen(NULL, PERIOD_CURRENT, 1)<iClose(NULL, PERIOD_CURRENT, 1))
{
if(iOpen("EURGBP", PERIOD_CURRENT, 1)<iClose("EURGBP", PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURJPY", PERIOD_CURRENT, 1)<iClose("EURJPY", PERIOD_CURRENT, 1))
returnfalse;
}
И такого тоже)
if(iOpen(NULL, PERIOD_CURRENT, 1)>iClose(NULL, PERIOD_CURRENT, 1))
{
if(iOpen(NULL, PERIOD_CURRENT, 1)>iClose(NULL, PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURGBP", PERIOD_CURRENT, 1)>iClose("EURGBP", PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURJPY", PERIOD_CURRENT, 1)>iClose("EURJPY", PERIOD_CURRENT, 1))
returnfalse;
}
elseif(iOpen(NULL, PERIOD_CURRENT, 1)<iClose(NULL, PERIOD_CURRENT, 1))
{
if(iOpen(NULL, PERIOD_CURRENT, 1)<iClose(NULL, PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURGBP", PERIOD_CURRENT, 1)<iClose("EURGBP", PERIOD_CURRENT, 1))
returnfalse;
if(iOpen("EURJPY", PERIOD_CURRENT, 1)<iClose("EURJPY", PERIOD_CURRENT, 1))
returnfalse;
}
Quindi qualè il modogiusto percercare combinazioni di barre ribassiste e rialziste allo stesso tempo? Ancora una volta, per favore non colpire troppo forte).
Saluti, per favore non prendetemi troppo a calci) Ho un EA. Voglio implementare in esso la funzione di aprire una posizione, se su diverse coppie di valute, una barra con indice 1, ha la stessa direzione (rialzista o ribassista). Sto cercando di farlo con iclose e iopen.
Quindi qualè il modogiusto percercare combinazioni di barre ribassiste e rialziste allo stesso tempo? Ancora una volta, per favore non colpitemi con una botta).
UsaCopyRates e assicurati di controllare quanto hai ordinato e quanto hai ricevuto. Ecco un esempio:
L'Expert Advisor è scritto, diciamo, su muwings. Quando finisci di testarlo nel tester, le muvings usate (con i parametri usati) appaiono nella finestra. Questo va bene.
Domanda.
Ma quando questo EA è anche caricato sul mercato e un utente scarica la demo, apparirà anche dopo la fine del test? O la mql ha una politica sulla privacy a questo proposito?
Конечно, можно самому заморочиться и проверить. Но те кто, заливал продукты, поймут, что лучше просто спросить)
L'Expert Advisor è scritto, diciamo, su muwings. Quando finisci di testarlo nel tester, le muvings usate (con i parametri usati) appaiono nella finestra. Questo va bene.
Domanda.
Ma quando carico lo stesso EA sul mercato e un utente scarica la demo, questi dati appariranno anche alla fine del test? O la mql ha una politica sulla privacy a questo proposito?
Certo, è più facile chiedere, ma non tutti quelli che hanno scaricato un EA sul mercato lo hanno controllato dopo.
In effetti, che differenza fa da dove è stato ottenuto il file dell'EA? Funzionerà allo stesso modo sia che sia stato scaricato da uno sviluppatore o criptato dal mercato...
L'Expert Advisor è scritto, diciamo, su muwings. Quando finisci di testarlo nel tester, le muvings usate (con i parametri usati) appaiono nella finestra. Questo va bene.
Domanda.
Ma quando carico lo stesso EA sul mercato e un utente scarica la demo, questi dati appariranno anche alla fine del test? O la mql ha una politica sulla privacy a questo proposito?
Potete per favore dirmi come dopo avertestato un EA in MQL5 per emettere una qualsiasi delle mie statistiche in una finestra pop-up quando il mouse è sopra le frecce?
Покупка торгового робота в MQL5 Маркете имеет одно большое преимущество перед всеми другими подобными предложениями - вы можете устроить комплексную проверку предлагаемой автоматической системы прямо в терминале MetaTrader 5. Каждый советник перед покупкой можно и нужно тщательно прогнать во всех неблагоприятных режимах во встроенном тестере торговых стратегий, чтобы получить о нем максимально полное представление.
Aiutami a riparare l'indicatore. Disegna un passo/griglia di prezzo a partire da un valore specificato. Il problema è che quando lo rimuovo, le linee rimangono sul grafico. Inoltre, non posso aggiungere un secondo indicatore come questo al grafico. In generale, come farlo rimuovere completamente dal grafico in modo che io possa lanciare lo stesso indicatore sul grafico con altri valori.
#property link"https://www.forexsystems.biz"#property version"1.00"#property indicator_chart_window//---- для расчёта и отрисовки индикатора использовано ноль буферов#property indicator_buffers0//---- использовано всего ноль графических построений#property indicator_plots0//--- входные параметры inputint count = 500; //количество линий вверх вниз от ценыinputint step = 100; //шаг линий inputdouble pr = 1.1; //цена от которой пляшем//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+intOnInit()
{
//--- indicator buffers mapping//---return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
Comment("");
}
//+------------------------------------------------------------------+ //| Создает горизонтальную линию | //+------------------------------------------------------------------+ bool HLine(conststring name="HLine",double price=0)
{
//--- создадим горизонтальную линию if(!ObjectCreate(0,name,OBJ_HLINE,0,0,price))
{
Print(__FUNCTION__,
": не удалось создать горизонтальную линию! Код ошибки = ",GetLastError());
return(false);
}
//--- установим цвет линии ObjectSetInteger(0,name,OBJPROP_COLOR,clrDodgerBlue);
ObjectSetInteger(0,name,OBJPROP_WIDTH,2);
return(true);
}
//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
double price=pr;
//--- создадим горизонтальную линию for(int i=0;i<=count;i++)
{
HLine("HLine"+(string)i,price+step*i*_Point);
HLine("HLine"+(string)(i+count+1),price-step*i*_Point);
}
//--- return value of prev_calculated for next callreturn(rates_total);
}
//+------------------------------------------------------------------+
Aiutami a riparare l'indicatore. Disegna un passo/griglia di prezzo a partire da un valore specificato. Il problema è che quando lo rimuovo, le linee rimangono sul grafico. Inoltre, non posso aggiungere un secondo indicatore come questo al grafico. In generale, come farlo cancellare completamente dal grafico, in modo che sia possibile aggiungere lo stesso indicatore sul grafico con valori diversi.
In OnDeinit dovete fareObjectsDeleteAll- cancellare per prefisso (nel vostro caso il prefisso è "HLine")
intObjectsDeleteAll(
long chart_id, // идентификатор графикаconststring prefix, // префикс имени объектаint sub_window=-1, // индекс окнаint object_type=-1// тип объекта для удаления
);
vedere cosa dice il retcode dopo l'invio dell'ordine
Grazie.
10018
TRADE_RETCODE_MARKET_CLOSED
Il mercato è chiuso.
Significa che c'è un problema con il broker.
Saluti, per favore non prendetemi troppo a calci)
Ho un EA. Voglio implementare in esso la funzione di aprire una posizione, se su diverse coppie di valute, una barra con indice 1, ha la stessa direzione (rialzista o ribassista).
Sto cercando di farlo con iclose e iopen.
Quindi qualè il modogiusto percercare combinazioni di barre ribassiste e rialziste allo stesso tempo? Ancora una volta, per favore non colpire troppo forte).
Saluti, per favore non prendetemi troppo a calci)
Ho un EA. Voglio implementare in esso la funzione di aprire una posizione, se su diverse coppie di valute, una barra con indice 1, ha la stessa direzione (rialzista o ribassista).
Sto cercando di farlo con iclose e iopen.
Quindi qualè il modogiusto percercare combinazioni di barre ribassiste e rialziste allo stesso tempo? Ancora una volta, per favore non colpitemi con una botta).
UsaCopyRates e assicurati di controllare quanto hai ordinato e quanto hai ricevuto. Ecco un esempio:
Ciao a tutti!
Situazione.
L'Expert Advisor è scritto, diciamo, su muwings. Quando finisci di testarlo nel tester, le muvings usate (con i parametri usati) appaiono nella finestra. Questo va bene.
Domanda.
Ma quando questo EA è anche caricato sul mercato e un utente scarica la demo, apparirà anche dopo la fine del test? O la mql ha una politica sulla privacy a questo proposito?
Конечно, можно самому заморочиться и проверить. Но те кто, заливал продукты, поймут, что лучше просто спросить)
Ciao a tutti!
Situazione.
L'Expert Advisor è scritto, diciamo, su muwings. Quando finisci di testarlo nel tester, le muvings usate (con i parametri usati) appaiono nella finestra. Questo va bene.
Domanda.
Ma quando carico lo stesso EA sul mercato e un utente scarica la demo, questi dati appariranno anche alla fine del test? O la mql ha una politica sulla privacy a questo proposito?
Certo, è più facile chiedere, ma non tutti quelli che hanno scaricato un EA sul mercato lo hanno controllato dopo.
In effetti, che differenza fa da dove è stato ottenuto il file dell'EA? Funzionerà allo stesso modo sia che sia stato scaricato da uno sviluppatore o criptato dal mercato...
Ciao a tutti!
Situazione.
L'Expert Advisor è scritto, diciamo, su muwings. Quando finisci di testarlo nel tester, le muvings usate (con i parametri usati) appaiono nella finestra. Questo va bene.
Domanda.
Ma quando carico lo stesso EA sul mercato e un utente scarica la demo, questi dati appariranno anche alla fine del test? O la mql ha una politica sulla privacy a questo proposito?
TesterHideIndicatorsAiutami a riparare l'indicatore. Disegna un passo/griglia di prezzo a partire da un valore specificato. Il problema è che quando lo rimuovo, le linee rimangono sul grafico. Inoltre, non posso aggiungere un secondo indicatore come questo al grafico. In generale, come farlo rimuovere completamente dal grafico in modo che io possa lanciare lo stesso indicatore sul grafico con altri valori.
Aiutami a riparare l'indicatore. Disegna un passo/griglia di prezzo a partire da un valore specificato. Il problema è che quando lo rimuovo, le linee rimangono sul grafico. Inoltre, non posso aggiungere un secondo indicatore come questo al grafico. In generale, come farlo cancellare completamente dal grafico, in modo che sia possibile aggiungere lo stesso indicatore sul grafico con valori diversi.
In OnDeinit dovete fareObjectsDeleteAll- cancellare per prefisso (nel vostro caso il prefisso è "HLine")