Teoria da aceleração da EA ao usar um indicador personalizado (função - iCustom) - página 7
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
Não. Há uma função mágica que baralhará todas as tentativas:
Este mecanismo está embutido no próprio termo. Embora a idéia seja interessante...
Infelizmente... Vamos continuar pensando.
O que você quer dizer com "acabou"? :-)
Isso significa que o indicador começou a retornar zeros em vez de dígitos.
Dennis Kirichenko, Karputov Vladimir - obrigado pelas informações sobre as funções!
Só não entendo, qual é a diferença entre TERMINAL_MEMORY_TOTAL e TERMINAL_MEMORY_AVAILABLE?
TERMINAL_MEMORY_TOTAL é a memória máxima disponível, e TERMINAL_MEMORY_AVAILABLE é a memória restante, certo?
Só não entende a diferença entre TERMINAL_MEMORY_TOTAL e TERMINAL_MEMORY_AVAILABLE?
TERMINAL_MEMORY_TOTAL é a memória máxima disponível, e TERMINAL_MEMORY_AVAILABLE é a memória restante, certo?
Eu tentei manualmente, mudando o modelo com muitos indicadores para quase vazio - o efeito está lá (mas o cache permanece - eu acho que não é crítico). Mas como fazer abertura e fechamento através de um roteiro modelo - não sei. Entendi que a dúvida é que, enquanto o roteiro estiver em execução, a memória não será apagada. Andrei, por favor, ajude com a experiência.
O que não está dando certo? O que deve ajudar? Onde está a tentativa? Onde está o código?
ChartOpen to open chart. Em seguida, nele GráficoAplicarTemplate com o nome de um modelo pré-desenhado (será o mesmo o tempo todo, não há necessidade de anotá-lo). Em seguida, ChartClose.
Medir a memória através da função proposta. Ou você pode baixar meu indicador gratuito iMemory, ele foi criado especialmente para este fim.
Em quatro acrescentaremos uma eliminação automática mais agressiva de tais cópias indicadoras.
Viva! Que bom quando quem está no poder ouve você!
E "tais cópias indicadoras" são aquelas causadas pela primeira quando há falta de memória para a segunda, ou algo mais?
O que não está dando certo? O que deve ajudar? Onde está a tentativa? Onde está o código?
ChartOpen to open chart. Em seguida, nele GráficoAplicarTemplate com o nome de um modelo pré-desenhado (será o mesmo o tempo todo, não há necessidade de anotá-lo). Em seguida, ChartClose.
Medir a memória através da função proposta. Ou você pode baixar meu indicador gratuito iMemory, ele foi criado especialmente para este fim.
Que tipo de programador eu sou? Aqui eu comecei a escrever o roteiro - o primeiro comando para abrir o gráfico não dá nenhum resultado. O que está errado?
//+------------------------------------------------------------------+
//| Scripts.mq4 |
//| Copyright © 2008, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property script_show_inputs
//--- input parameters
input int Input1=0;
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
long ChartOpen(string GBPUSD, ENUM_TIMEFRAMES PERIOD_H1);
void OnStart()
{
}
//+------------------------------------------------------------------+
Que tipo de programador sou I.... começou a escrever o roteiro - o primeiro comando para abrir o gráfico não dá resultados. O que está errado?
Então você quis dizer "faça isso por mim", não "me ajude"? Isso é o que você diz.
Não é assim - quase tudo: a função ChartOpen deve ser chamada a partir do corpo da função OnStart. O primeiro parâmetro - string, deve estar entre aspas. Você não precisa especificar o tipo de dados (string e ENUM_TIMEFRAMES) ao ligar).
Comece procurando exemplos de uso da função ou documentação (também há exemplos lá).
Então você quis dizer "faça isso por mim", não "me ajude"? Isso é o que você diz.
Não é assim - praticamente tudo: a função ChartOpen deve ser chamada a partir do corpo da função OnStart. O primeiro parâmetro - string, deve estar entre aspas. Você não precisa especificar o tipo de dados (string e ENUM_TIMEFRAMES) ao ligar).
Comece procurando por exemplos de utilização da função ou documentação (também existem exemplos).
O problema é esse, não há um exemplo adequado na ajuda.
De acordo com seus comentários, eu o redizi:
//+------------------------------------------------------------------+
//| Scripts.mq4 |
//| Copyright © 2008, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property script_show_inputs
//--- input parameters
input int Input1=0;
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
long ChartOpen("GBPUSD", PERIOD_H1);
}
//+------------------------------------------------------------------+
Eu me engano quando me agarro, o que há de errado?
'Scripts.mq4' Scripts.mq4 1 1
ChartOpen' - função só pode ser declarada no âmbito global Scripts.mq4 21 10
GBPUSD' - declaração sem tipo Scripts.mq4 21 20
GBPUSD - vírgula esperada Scripts.mq4 21 20
'PERIOD_H1' - declaração sem tipo Scripts.mq4 21 32
4 erro(s), 0 advertência(ões) 5 1
O problema é esse, não há um exemplo adequado na ajuda.
Redigi-o de acordo com seus comentários:
//+------------------------------------------------------------------+
//| Scripts.mq4 |
//| Copyright © 2008, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property script_show_inputs
//--- input parameters
input int Input1=0;
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
long ChartOpen("GBPUSD", PERIOD_H1);
}
//+------------------------------------------------------------------+
Eu me engano quando me agarro, o que há de errado?
'Scripts.mq4' Scripts.mq4 1 1
ChartOpen' - função só pode ser declarada no âmbito global Scripts.mq4 21 10
GBPUSD' - declaração sem tipo Scripts.mq4 21 20
GBPUSD - vírgula esperada Scripts.mq4 21 20
'PERIOD_H1' - declaração sem tipo Scripts.mq4 21 32
4 erro(s), 0 advertência(ões) 5 1
Demora muito tempo para explicar o que está errado :)
O problema é esse: não há um exemplo adequado no helpdesk.
Além da linha de ajuda, há um codobase e um fórum. Trabalhos de busca.
ps: ugh, a inserção do link no poste está quebrada =(
https://www.mql5.com/ru/search#!keyword=ChartOpen&page=2