Saudações, por favor não me dêem muitos pontapés) Eu tenho um EA. Quero implementar nela a função de abrir uma posição, se em vários pares de moedas, uma barra com índice 1, tiver a mesma direcção (em alta ou em baixa). Estou a tentar fazê-lo com 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;
}
Então, qual éa formacorrecta de procurar combinações de barras em baixa e em alta ao mesmo tempo? Mais uma vez, por favor, não lhe batam com muita força).
Saudações, por favor não me dêem muitos pontapés) Eu tenho um EA. Quero implementar nela a função de abrir uma posição, se em vários pares de moedas, uma barra com índice 1, tiver a mesma direcção (em alta ou em baixa). Estou a tentar fazê-lo com iclose e iopen.
O Expert Advisor está escrito, digamos, sobre os muwings. Quando se termina de o testar no aparelho de ensaio, os aparelhos utilizados (com parâmetros utilizados) aparecem na janela. Não há problema.
Pergunta.
Mas quando esta EA também é carregada no Mercado e um utilizador descarrega a demonstração, irá também aparecer após o final do teste? Ou será que a mql tem uma política de privacidade a este respeito?
Конечно, можно самому заморочиться и проверить. Но те кто, заливал продукты, поймут, что лучше просто спросить)
O Expert Advisor está escrito, digamos, sobre os muwings. Quando se termina de o testar no aparelho de ensaio, os aparelhos utilizados (com parâmetros utilizados) aparecem na janela. Não há problema.
Pergunta.
Mas quando carrego o mesmo AE para o Mercado e um utilizador descarrega a demonstração, estes dados também aparecerão no final do teste? Ou será que a mql tem uma política de privacidade a este respeito?
É claro que é mais fácil perguntar, mas nem todos os que descarregaram um EA para o mercado o verificaram posteriormente.
Na verdade, que diferença faz de onde foi obtido o ficheiro da EA? Funcionará da mesma forma quer tenha sido descarregado de um programador ou codificado a partir do mercado...
O Expert Advisor está escrito, digamos, sobre os muwings. Quando se termina de o testar no aparelho de ensaio, os aparelhos utilizados (com parâmetros utilizados) aparecem na janela. Não há problema.
Pergunta.
Mas quando esta EA também é carregada no Mercado e um utilizador descarrega a demonstração, irá também aparecer após o final do teste? Ou será que a mql tem uma política de privacidade a este respeito?
Pode dizer-me como é que, depois detestar uma EA em MQL5, pode emitir qualquer uma das minhas estatísticas numa janela pop-up quando o rato está por cima das setas?
Покупка торгового робота в MQL5 Маркете имеет одно большое преимущество перед всеми другими подобными предложениями - вы можете устроить комплексную проверку предлагаемой автоматической системы прямо в терминале MetaTrader 5. Каждый советник перед покупкой можно и нужно тщательно прогнать во всех неблагоприятных режимах во встроенном тестере торговых стратегий, чтобы получить о нем максимально полное представление.
Ajude-me a fixar o indicador. Extrai uma etapa/grande de preço a partir de um valor especificado. O problema é que quando o retiro, as linhas permanecem na tabela. Além disso, não posso acrescentar um segundo indicador como este ao gráfico. Em geral, como posso fazê-lo remover completamente do gráfico para que o mesmo indicador possa ser atirado para o gráfico com outros valores.
#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);
}
//+------------------------------------------------------------------+
Ajude-me a fixar o indicador. Extrai uma etapa/grande de preço a partir de um valor especificado. O problema é que quando o retiro, as linhas permanecem na tabela. Além disso, não posso acrescentar um segundo indicador como este ao gráfico. Em geral, como fazê-lo apagar completamente do gráfico, de modo a que seja possível adicionar o mesmo indicador no gráfico com valores diferentes.
No OnDeinit precisa de fazerObjectsDeleteAll- apagar por prefixo (no seu caso o prefixo é "HLine")
intObjectsDeleteAll(
long chart_id, // идентификатор графикаconststring prefix, // префикс имени объектаint sub_window=-1, // индекс окнаint object_type=-1// тип объекта для удаления
);
ver o que diz o código retcode após o envio da encomenda
Obrigado.
10018
TRADE_RETCODE_MARKET_CLOSED
O mercado está fechado.
Isto significa que existe um problema com o corretor.
Saudações, por favor não me dêem muitos pontapés)
Eu tenho um EA. Quero implementar nela a função de abrir uma posição, se em vários pares de moedas, uma barra com índice 1, tiver a mesma direcção (em alta ou em baixa).
Estou a tentar fazê-lo com iclose e iopen.
Então, qual éa formacorrecta de procurar combinações de barras em baixa e em alta ao mesmo tempo? Mais uma vez, por favor, não lhe batam com muita força).
Saudações, por favor não me dêem muitos pontapés)
Eu tenho um EA. Quero implementar nela a função de abrir uma posição, se em vários pares de moedas, uma barra com índice 1, tiver a mesma direcção (em alta ou em baixa).
Estou a tentar fazê-lo com iclose e iopen.
Então, qual éa formacorrecta de procurar combinações de barras em baixa e em alta ao mesmo tempo? Mais uma vez, por favor, não me batam com um murro).
UseCopyRates, e certifique-se de que controla quanto encomendou e quanto recebeu. Aqui está um exemplo:
Olá a todos!
Situação.
O Expert Advisor está escrito, digamos, sobre os muwings. Quando se termina de o testar no aparelho de ensaio, os aparelhos utilizados (com parâmetros utilizados) aparecem na janela. Não há problema.
Pergunta.
Mas quando esta EA também é carregada no Mercado e um utilizador descarrega a demonstração, irá também aparecer após o final do teste? Ou será que a mql tem uma política de privacidade a este respeito?
Конечно, можно самому заморочиться и проверить. Но те кто, заливал продукты, поймут, что лучше просто спросить)
Olá a todos!
Situação.
O Expert Advisor está escrito, digamos, sobre os muwings. Quando se termina de o testar no aparelho de ensaio, os aparelhos utilizados (com parâmetros utilizados) aparecem na janela. Não há problema.
Pergunta.
Mas quando carrego o mesmo AE para o Mercado e um utilizador descarrega a demonstração, estes dados também aparecerão no final do teste? Ou será que a mql tem uma política de privacidade a este respeito?
É claro que é mais fácil perguntar, mas nem todos os que descarregaram um EA para o mercado o verificaram posteriormente.
Na verdade, que diferença faz de onde foi obtido o ficheiro da EA? Funcionará da mesma forma quer tenha sido descarregado de um programador ou codificado a partir do mercado...
Olá a todos!
Situação.
O Expert Advisor está escrito, digamos, sobre os muwings. Quando se termina de o testar no aparelho de ensaio, os aparelhos utilizados (com parâmetros utilizados) aparecem na janela. Não há problema.
Pergunta.
Mas quando esta EA também é carregada no Mercado e um utilizador descarrega a demonstração, irá também aparecer após o final do teste? Ou será que a mql tem uma política de privacidade a este respeito?
TesterHideIndicatorsAjude-me a fixar o indicador. Extrai uma etapa/grande de preço a partir de um valor especificado. O problema é que quando o retiro, as linhas permanecem na tabela. Além disso, não posso acrescentar um segundo indicador como este ao gráfico. Em geral, como posso fazê-lo remover completamente do gráfico para que o mesmo indicador possa ser atirado para o gráfico com outros valores.
Ajude-me a fixar o indicador. Extrai uma etapa/grande de preço a partir de um valor especificado. O problema é que quando o retiro, as linhas permanecem na tabela. Além disso, não posso acrescentar um segundo indicador como este ao gráfico. Em geral, como fazê-lo apagar completamente do gráfico, de modo a que seja possível adicionar o mesmo indicador no gráfico com valores diferentes.
No OnDeinit precisa de fazerObjectsDeleteAll- apagar por prefixo (no seu caso o prefixo é "HLine")