Como seu Ask2 e Bid2 são 0, por que não adicionar esta linha depois de uma delas?
E ver se há alguma informação útil?
Eu adicionei esta linha que você mencionou à minha função inicial logo após definir Ask2,Bid2 quando desabilitei a linha abaixo para deixar as velas começarem e o gráfico continuar
HosseinKOGO: Adicionei esta linha que você mencionou à minha função inicial logo após definir Ask2,Bid2 quando desabilitei a linha abaixo a fim de deixar as velas começarem e o gráfico continuar
O erro foi 4106 que significa "Símbolo desconhecido".
Então desabilitei também a linha abaixo:
E obteve o erro 4066 no início (Dados históricos solicitados em estado de atualização.) Em seguida, girou 4106 para o restante do backtesting.
Suspeito que o nome de seu símbolo não seja apenas "GBPUSD"... ele pode ter caracteres extras em algum lugar... você já tentou isso:
Print("Symbol Name = ", Symbol());
antes de verificar que o nome do símbolo é apenas seis letras maiúsculas?
Suspeito que seu nome simbólico não seja apenas "GBPUSD"... pode ter caracteres extras em algum lugar... você já tentou isso:
antes de verificar que o nome do símbolo é apenas seis letras maiúsculas?
Minha função de símbolo() mostra "GBPAUD" desde que o coloquei no gráfico GBPAUD. Apesar de eu estar usando a conta demo normal para testes, Exatamente 6 letras maiúsculas. Entretanto, eu tentei isto que você sugere e obtive o resultado esperado.
Eu tenho um aviso também quando compilar o código: "implicit enum conversion" (conversão de enumeração implícita), que está lá, que eu sublinhei abaixo. O que isso significa exatamente?
#define HR2400 PERIOD_D1 * 60// 86400 = 24 * 3600int TimeOfDay(datetime when=0){ if(when == 0) when = TimeCurrent();
return( int(when % HR2400 )); }
datetime DateOfDay(datetime when=0){ if(when == 0) when = TimeCurrent();
return( when - TimeOfDay(when) ); }
#define SYMBOL string#define THIS_SYMBOL ""bool download_history(ENUM_TIMEFRAMES period=PERIOD_CURRENT){
return download_history(_Symbol, period);
}
bool download_history(
SYMBOL symbol=THIS_SYMBOL, ///< The symbol required.ENUM_TIMEFRAMES period=PERIOD_CURRENT/**< The standard timeframe.*/){
if(symbol == THIS_SYMBOL) symbol = _Symbol;
if(period == PERIOD_CURRENT) period = _Period;
datetime today = DateOfDay();
ResetLastError();
datetime other = iTime(symbol, period, 0);
if(_LastError == 0
&& today == DateOfDay(other)) returntrue;
if(_LastError != ERR_HISTORY_WILL_UPDATED
&& _LastError != ERR_NO_HISTORY_DATA
) Print(StringFormat("iTime(%s,%i) Failed: %i", symbol, period,_LastError));
returnfalse;
}
E percebi que Ask2 e Bid2 serão zero para símbolos não em meu relógio de mercado... mas uma vez que os incluo em meu relógio de mercado, posso obter sua oferta e perguntar. Não há necessidade de se preocupar com dados históricos.
Acho que encontrei a razão pela qual você recebe zeros... Coloquei estas linhas em um roteiro e o executei em meu MT4:
E percebi que Ask2 e Bid2 serão zero para símbolos não em meu relógio de mercado... mas uma vez que os incluo em meu relógio de mercado, posso obter sua oferta e perguntar. Não há necessidade de se preocupar com dados históricos.
Tenho esses símbolos na janela do meu relógio de mercado, no canto superior esquerdo do meu MT4. Mas se você quer dizer que eu deveria incluí-los em meu código, como você os incluiu por código? (Se eu não entendi bem, por favor me esclareça, já que não sou tão profissional quanto isso :D)
Tenho esses símbolos na minha janela de observação do mercado, no canto superior esquerdo do meu MT4. Mas se você quer dizer que eu deveria incluí-los em meu código, como você os incluiu por código? (Se eu não entendi bem, por favor me esclareça, já que não sou tão profissional quanto isso :D)
Não código.
Como eles já estão na janela de seu relógio de mercado, as coisas estão ficando mais estranhas.
De qual corretor você fez o download de seu mt4? Eu quero instalá-lo para testar.
De fato, não sou codificador de qualquer forma, já tive a oportunidade de codificar alguns EAs. Minha atividade está associada à inventividade e ao sistema, então concebi 600-700 pensamentos para fazer EAs e os construí até agora. Eu simplesmente posso codificar EAs simples e não estou acostumado com sua codificação de estado anormal...
Coloquei esses códigos em meu EA, porém ele retorna apenas este erro: 2019.05.06 15:37:56.586 2018.01.02 00:00:07 MyEA! GBPAUD,H4: iTime(GBPUSD,240) Falha: 0
Estou tentando GBPAUD como meu diagrama aberto e GBPUSD como meu segundo par.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Qual é o problema?
Já que seu Ask2 e Bid2 são 0, por que não adicionar esta linha após um deles?
E ver se há alguma informação útil?
Você chamou o download_history para seu "segundo par", segundo TF?
Você chamou o download_history para seu "segundo par", segundo TF?
E aqui está minha função inicial:
no qual eu coloco o GBPUSD como entrada do SecondPair e faço este backtest no gráfico GBPAUD.
Como seu Ask2 e Bid2 são 0, por que não adicionar esta linha depois de uma delas?
E ver se há alguma informação útil?
O erro foi 4106 que significa "Símbolo desconhecido".
Então eu desabilitei a linha abaixo também:
download_history(SecondPair,PERIOD_H4);E obteve o erro 4066 no início (Dados históricos solicitados em estado de atualização.) Em seguida, girou 4106 para o restante do backtesting.Adicionei esta linha que você mencionou à minha função inicial logo após definir Ask2,Bid2 quando desabilitei a linha abaixo a fim de deixar as velas começarem e o gráfico continuar
O erro foi 4106 que significa "Símbolo desconhecido".
Então desabilitei também a linha abaixo:
E obteve o erro 4066 no início (Dados históricos solicitados em estado de atualização.) Em seguida, girou 4106 para o restante do backtesting.Suspeito que o nome de seu símbolo não seja apenas "GBPUSD"... ele pode ter caracteres extras em algum lugar... você já tentou isso:
antes de verificar que o nome do símbolo é apenas seis letras maiúsculas?
Suspeito que seu nome simbólico não seja apenas "GBPUSD"... pode ter caracteres extras em algum lugar... você já tentou isso:
antes de verificar que o nome do símbolo é apenas seis letras maiúsculas?
Minha função de símbolo() mostra "GBPAUD" desde que o coloquei no gráfico GBPAUD.
Apesar de eu estar usando a conta demo normal para testes, Exatamente 6 letras maiúsculas. Entretanto, eu tentei isto que você sugere e obtive o resultado esperado.
Eu tenho um aviso também quando compilar o código: "implicit enum conversion" (conversão de enumeração implícita), que está lá, que eu sublinhei abaixo. O que isso significa exatamente?
Acho que encontrei a razão pela qual você recebe zeros... Coloquei estas linhas em um roteiro e o executei em meu MT4:
E percebi que Ask2 e Bid2 serão zero para símbolos não em meu relógio de mercado... mas uma vez que os incluo em meu relógio de mercado, posso obter sua oferta e perguntar. Não há necessidade de se preocupar com dados históricos.
Acho que encontrei a razão pela qual você recebe zeros... Coloquei estas linhas em um roteiro e o executei em meu MT4:
E percebi que Ask2 e Bid2 serão zero para símbolos não em meu relógio de mercado... mas uma vez que os incluo em meu relógio de mercado, posso obter sua oferta e perguntar. Não há necessidade de se preocupar com dados históricos.
Tenho esses símbolos na janela do meu relógio de mercado, no canto superior esquerdo do meu MT4.
Mas se você quer dizer que eu deveria incluí-los em meu código, como você os incluiu por código? (Se eu não entendi bem, por favor me esclareça, já que não sou tão profissional quanto isso :D)
Tenho esses símbolos na minha janela de observação do mercado, no canto superior esquerdo do meu MT4.
Mas se você quer dizer que eu deveria incluí-los em meu código, como você os incluiu por código? (Se eu não entendi bem, por favor me esclareça, já que não sou tão profissional quanto isso :D)