[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 705
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Tão claro, olhando para o livro e não vendo, funciona, obrigado! Seguindo em frente) com perguntas. Tudo sobre as mesmas variáveis globais. Eu adicionei a seguinte condição ao indicador:
Quero definir a qual variável global deve ser atribuído um valor, dependendo da moeda em que o indicador se baseia.
Entendo que na variável global GlobalVariableSet(valuta,param), o nome (valuta) deve conter o valor atribuído a ela acima
chamar novamente a variável global no código do Expert Advisor
string valuta="valuta";
int i= GlobalVariableGet(valuta); // mas eu não recebo o valor, .... Ou seja, eu recebo 0. Será impossível mudar o nome da variável global desta forma?
Se um EA verifica o valor gravado pelo indicador, então seria lógico supor que o valor do parâmetro valuta deve corresponder ao nome do símbolo, ou seja, EURUSD ou GBPUSD.
de acordo, se o conselheiro verificar o valor do símbolo atual, então
valuta de corda = Símbolo();
int i= GlobalVariableGet(valuta);Primeiramente, a partir da ajuda
Retorna o valor da variável global existente ou 0 no caso de um erro. Ligue para GetLastError() para obter informações de erro.
Você consegue ver o conteúdo do GV, mas não consegue recuperá-lo?
Bem, as variáveis globais mostram tanto o nome quanto o valor, .... Só não consigo obter o valor da variável global em meu código via variável global (parâmetro-nome), tenho que especificar o nome da string, então não há problema se ela encontrar tudo.
Bem, as variáveis globais exibem tanto o nome quanto o valor,..... Só não consigo obter o valor da variável global em meu código via (parâmetro-nome) da variável global, tenho que especificar o nome da string, então ela não encontra problemas.
Substitua
se (symb===EUR) {valuta=EUR;}
para
if (symb==="EURUSD") {valuta="EUR";}
Se a EA verificar o valor gravado pelo indicador, então seria lógico supor que o valor do parâmetro valuta deve corresponder ao nome do instrumento, ou seja, EURUSD ou GBPUSD...
Assim, se o assessor verificar o valor do símbolo atual, então
valuta de corda = Símbolo();
int i= GlobalVariableGet(valuta);É assim que funciona))) É mais fácil do que parece )
Muito obrigado a todos que nos visitam e ajudam!
Amigos, digam-me onde estraguei tudo... Eu não consigo entender. O indicador lê os dados, mas depois não funciona. Não consigo encontrá-lo. Talvez alguém possa me dizer o que eu não entendo:
O periódico sempre produz os dados da matriz de valores indicadores, mas mais adiante - pare...
... apenas uma célula zero... e apenas zero... Ajude, por favor...
Desculpe, houve um erro ..... aqui está o original
Odyssey, se você não os tem, você deve adicioná-los :))
Amigos, digam-me onde estraguei tudo... Eu não consigo entender. O indicador lê os dados, mas depois não funciona. Não consigo encontrá-lo. Talvez alguém possa me dizer o que eu não entendo:
A revista sempre mostra os dados da matriz de valores indicadores, mas depois pára...
... apenas uma célula zero... e apenas zero... Ajude, por favor...
Artyom, encontrou o primeiro erro até agora:
Arrays PeakUP[] e PeakDN[], são declarados sem quantidade especificada de elementos, ou seja, você os criou sem células, e mais adiante em um código tenta escrever algo neles, mas como eles não contêm em si mesmos elementos, naturalmente neles nada é escrito, e na impressora constantemente zero. Como você não sabe exatamente quantos picos e canais haverá, recomendo que você aumente dinamicamente o número de elementos nestas matrizes quando novos dados chegarem, as áreas corrigidas estão marcadas em vermelho.
ArraySize() retorna o número total de elementos da matriz, mas como a indexação começa de zero, o número real de elementos é ArraySize() - 1.
...como fazer, ou pelo menos o que deve ser especificado nele, para que ele abra pedidos em outros pares. Não quero executar vários EAs ((
Artyom, até agora eu encontrei o primeiro erro:
Arrays PeakUP[] e PeakDN[], são declarados sem quantidade especificada de elementos, ou seja, você os criou sem células, e mais adiante no código tenta escrever algo neles, mas como eles não contêm elementos em si, naturalmente nada é escrito neles, e na impressora constantemente zero. Como você não sabe exatamente quantos picos e canais haverá, recomendo que você aumente dinamicamente o número de elementos nestas matrizes quando novos dados chegarem, as áreas corrigidas estão marcadas em vermelho.
ArraySize() retorna o número total de elementos da matriz, mas como a indexação começa de zero, o número real de elementos é ArraySize() - 1.