E os valores atuais estão em pé, ou seja, a partir do tempo real.
E ao testar em barras formadas com uma nova barra, a anterior muda... :О)
#property indicator_buffers 2
#property indicator_style1 0
#property indicator_color1 Orange
#property indicator_width1 2
#property indicator_style2 0
#property indicator_color2 BlueViolet
#property indicator_width2 2
extern bool Test=false;
//03/04/10
//SetIndexStyle(0, DRAW_LINE, STYLE_SOLID, 2);
//---- buffers
double DMA[];string PARA;int hFile;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,DMA);
SetIndexShift(0,0);
SetIndexLabel(0,"inv");
PARA=Symbol();
if (Test) hFile=FileOpen("Dt"+Symbol()+Period()+".csv",FILE_CSV |FILE_WRITE,";");
//if (iClose(PARA,0,0)<0.00001) {Alert (PARA," - not presents...");deinit();
// return (-1);}
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
if (Test) FileClose(hFile);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
//----
int counted_bars=IndicatorCounted();
int i,N;double Value;
N=Bars-counted_bars;
if(counted_bars<0) return(-1);
//---- last counted bar will be recounted
if (N==0) return(0);
if (Test){ FileWrite(hFile,"--1 ",StrTime(iTime(Symbol(),Period(),1)),iClose(PARA,0,1));
FileWrite(hFile,"--0 ",StrTime(iTime(Symbol(),Period(),0)),iClose(PARA,0,0));
}
for (i=N-1; i>=0; i--)
{
Value=iClose(PARA,0,i);
// Print (i,"=",Value);
DMA[i]=Value;
}
return(0);
}
//+------------------------------------------------------------------+
string StrTime(datetime IT){
return(StringConcatenate(TimeYear(IT),".",TimeMonth(IT),".",TimeDay(IT)
, "-",TimeHour(IT),"^",TimeMinute(IT),"^",TimeSeconds(IT)));
}
0 | 2009.2.3-10^15^0 | 1.2849 | |
1 | 2009.2.3-10^15^0 | 1.2844 | |
0 | 2009.2.3-10^30^0 | 1.2845 | |
1 | 2009.2.3-10^30^0 | 1.2852 | |
0 | 2009.2.3-10^45^0 | 1.2852 | |
1 | 2009.2.3-10^45^0 | 1.2841 | |
0 | 2009.2.3-11^0^0 | 1.2841 | |
1 | 2009.2.3-11^0^0 | 1.2834 | |
0 | 2009.2.3-11^15^0 | 1.2833 | |
1 | 2009.2.3-11^15^0 | 1.2814 | |
0 | 2009.2.3-11^30^0 | 1.2814 | |
1 | 2009.2.3-11^30^0 | 1.2813 | |
0 | 2009.2.3-11^45^0 | 1.2813 | |
1 | 2009.2.3-11^45^0 | 1.2823 | |
0 | 2009.2.3-12^0^0 | 1.2822 | |
1 | 2009.2.3-12^0^0 | 1.281 | |
0 | 2009.2.3-12^15^0 | 1.281 | |
1 | 2009.2.3-12^15^0 | 1.2824 | |
0 | 2009.2.3-12^30^0 | 1.2823 | |
1 | 2009.2.3-12^30^0 | 1.2829 | |
0 | 2009.2.3-12^45^0 | 1.2829 | |
1 | 2009.2.3-12^45^0 | 1.2824 | |
0 | 2009.2.3-13^0^0 | 1.2824 | |
1 | 2009.2.3-13^0^0 | 1.2835 | |
0 | 2009.2.3-13^15^0 | 1.2835 | |
1 | 2009.2.3-13^15^0 | 1.2838 | |
0 | 2009.2.3-13^30^0 | 1.2838 | |
1 | 2009.2.3-13^30^0 | 1.2836 | |
0 | 2009.2.3-13^45^0 | 1.2836 |
No processo de aprendizagem da MQL4, descobri que pelo menos meu testador não dá informações
de outras TFs. Aqui está o código de verificação, ele pode ser anexado a qualquer Expert Advisor.
Pode ser pendurado em qualquer Expert Advisor, em meu testador apenas as indicações do TF estão mudando.
Comentário (
"\n", " ----------- 1------ = ",iOpen(Symbol(),1,1)," - ", iClose(Symbol(),1,1),
"\n", " ----------- 2------ = ",iOpen(Symbol(),5,1)," - ", iClose(Symbol(),5,1),
"\n", " ----------- 3------ = ",iOpen(Symbol(),15,1)," - ", iClose(Symbol(),15,1),
"\n", " ----------- 4------ = ",iOpen(Symbol(),30,1)," - ", iClose(Symbol(),30,1),
"\n", " ----------- 5------ = ",iOpen(Symbol(),60,1)," - ", iClose(Symbol(),60,1),
"\n", " ----------- 6------ = ",iOpen(Symbol(),240,1)," - ", iClose(Symbol(),240,1),
"\n", " ----------- 7------ = ",iOpen(Symbol(),1440,1)," - ", iClose(Symbol(),1440,1),
"\n", " ----------- 8------ = ",iOpen(Symbol(),10080,1)," - ", iClose(Symbol(),10080,1),
"\n", " ----------- 9------ = ",iOpen(Symbol(),43200,1)," - ", iClose(Symbol(),43200,1))
Eu tentei em cada TF, a mesma história - as leituras mudam apenas para a TF
no qual é testado. O trabalho em rede ainda não resolveu a situação.
Por favor, informe, é um assunto para tratamento ou peço que não esteja lá.
Obrigado por seu feedback!
Eis o que obtemos
1 | 2009.7.10-22^45^0 | 1.39478 |
0 | 2009.7.10-23^0^0 | 1.39476 |
--0M | 2009.7.10-23^0^0 | 1.3488 |
1 | 2009.7.10-23^0^0 | 1.39476 |
0 | 2009.7.10-23^15^0 | 1.39475 |
--0M | 2009.7.10-23^15^0 | 1.3488 |
1 | 2009.7.10-23^15^0 | 1.39475 |
0 | 2009.7.10-23^30^0 | 1.39472 |
--0M | 2009.7.10-23^30^0 | 1.3488 |
1 | 2009.7.10-23^30^0 | 1.39409 |
0 | 2009.7.10-23^45^0 | 1.39409 |
--0M | 2009.7.10-23^45^0 | 1.3488 |
1 | 2009.7.10-23^45^0 | 1.39353 |
0 | 2009.7.13-1^0^0 | 1.39461 |
--0M | 2009.7.13-1^0^0 | 1.3488 |
if (Test){ FileWrite(hFile,"--1 ",StrTime(iTime(Symbol(),Period(),1)),iClose(PARA,0,1));
FileWrite(hFile,"--0 ",StrTime(iTime(Symbol(),Period(),0)),iClose(PARA,0,0));
FileWrite(hFile,"--0M ",StrTime(iTime(Symbol(),Period(),0)),iClose(PARA,1,0));
}
E ter que esperar semanas para o pagamento.
Ilumine-me como fazer com que as funções iClose-iOpen funcionem com um prazo diferente de zero e o prazo que está sendo testado. E para fazer o código para o testador coincidir com o código para o verdadeiro.
И приходится ждать оплаты неделями.
Просветите, как заставить работать функции iClose-iOpen и пр. с таймфреймом отличным от нуля и от тестируемого таймфрейма. и чтобы код для тестера совпадал с кодом для реала.
E um especialista não pode ser testado como uma questão de princípio.
Não é suficiente que um zass com múltiplas moedas...
Muito simples - desenhamos 9 quadrados em uma linha no gráfico - sombrearemos de acordo com as leituras dos indicadores
que usaremos para o teste - verde ou vermelho.
Estou tentando entender em detalhes o que se move por carrapatos, mas existe uma armadilha.
Há algumas informações na Internet, mas não no site https://www.mql5.com/ru/articles/1385. Há muita água em outros artigos, mas
não é a mesma coisa. Tentei substituir as variáveis e colocá-las em uma matriz, mas o resultado é zero, ou melhor
O resultado é zero, ou para ser mais preciso, não há resultado porque não há dados.
A fim de avaliar corretamente a situação, quanto mais escrever um programa, eu preciso saber exatamente
Agora acontece que uma coisa é real e a outra está errada no testador.
Ainda não foi testado na demonstração em ON-Line - ainda não foi verificado!
Ontem eu notei algo errado.
O testador só vê as últimas 1000 barras no início dos testes. Se você definir um consultor especializado em M1, você não verá mais de 1000 minutos atrás (no momento do início dos testes).
Eu resolvo este problema definindo a data de início do testador muito antes, e prescrevendo a data necessária no próprio Expert Advisor.
Тестер видит только 1000 последних баров в начале тестирования. Если поставил эксперт на M1, то дальше 1000 минут назад не увидишь (в момент старта тестирования).
Решаю эту проблему постановкой даты старта тестера намного раньше, а в самом эксперте прописываю нужную дату.
Tem sido alegado que dados minuciosos são usados para gerar os carrapatos.
Mas o valor minuto em si, como visto no meu exemplo - o valor atual - não tem nada a ver com o histórico minuto.
E onde você obteve as informações sobre 1000 barras?
Talvez você tenha configurado as propriedades do histórico dessa forma?
Mas não é assim no meu caso...
----
É um fato que não há mais de 100 barras de dados antes do início do período de teste.
Isto também é um fato. :(
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
de outras TFs. Aqui está o código de verificação, ele pode ser anexado a qualquer Expert Advisor. Em meu testador
apenas as indicações da TF estão mudando, outras ficam no mesmo lugar.
Comentário (
"\n", " ----------- 1
= ",iOpen(Symb ol(),1,1)," - ", iClose(Symbol(),1,1), "\n", "
2----------- = ",iOpen(Symbol(),5,1)," - ", iClose(Symbol(),5,1), "\n", " ------ 3 = ",iOpen(Symbol(),15,1)," - ",iClose(Símbolo(),15,1),
"\n", " ----------- 4------ = ",iOpen(Símbolo(),30,1)," - ", iClose(Símbolo(),30,1),
"\n", " ------ 5------ = ",iOpen(Symbol(),60,1)," - ", iClose(Symbol(),60,1),
"\n", " 6----------- = "iOpen(Symbol(),240,1)," - ", iClose(Symbol(),240,1),
"\n", " ------ 7----------- = ",iOpen(Symbol(),1440,1)," - "iClose(Símbolo(),1440,1),
"\n", " ------ 8------ = ",iOpen(Símbolo(),10080,1)," - ", iClose(Símbolo(),10080,1),
"\n", "
9------ = ",iOpen(Symbol(),43200,1)," - ", iClose(Symbol(),43200,1)); Tentei cada um em cada TF, mesma história - as leituras mudam apenas para aquela TF
na qual é testado. A Internet não está resolvendo a situação.
Por favor, informe, é um conserto ou não estou pedindo para não estar lá.
obrigado pela atenção!