Autoria - página 3

 
ivandurak:
Estou na fase de escrever um Testador de Estratégia, e estou perante um dilema. Se tomarmos 4 como base, obtemos uma ferramenta simples e muito eficaz em termos de análise TS baseada em resultados comerciais. Se tomarmos 5, então a conveniência da portabilidade do código. Até agora, o meu imho está inclinado para a primeira opção, como se costuma dizer em cheque ou vai.

Aquihttps://www.mql5.com/ru/forum/4956/page46#comment_117097 ehttps://www.mql5.com/ru/forum/4956/page47#comment_118646, pode dar uma vista de olhos para as entradas.

Verificações e travessões primeiro, depois cavalgadas. imho.

 
Bene_Nota:
E às minhas observações a história não se repete, pelo que não concordaria com o primeiro ponto.

Argumento.

Não estamos a dizer que o movimento actual será exactamente um pip mais próximo do que foi. Se tomarmos alguns sinais de um apartamento, alguns sinais de uma tendência, vamos colocar tudo num neurónio, obteremos um número limitado de aglomerados (esta não é a minha conclusão, vi uma nota onde não a consigo encontrar). Podemos construir um TS adequado para qualquer pedaço de história ou um aglomerado não precisa de provas. Assim, devemos reconhecer atempadamente em que aglomerado estamos, para termos tempo de apanhar algumas migalhas. Fazer estatísticas, tempo para encontrar, pensar na possível trajectória das características do mercado para seleccionar de forma preventiva o TS .........

Que.humano

Vou dar uma vista de olhos. A questão é que, se aceitarmos a filosofia de ordem e de gestão de posições para 5 . Penso que o melhor dos Expert Advisors multitemporais é complicado pela posição líquida, sem qualquer equação adicional é impossível dizer qual TS numa hora ou minuto é mais preferível, e se tiver uma estratégia multitemporal não sei como abordar tal tarefa excepto para a criação de um conjunto de objectos e a sua gestão. Tudo é muito mais simples no 4 em termos de conveniência de programação. Basta criar um conjunto de estruturas descrevendo a ordem, cada uma das quais tem a sua própria vida, todos os dados sobre abertura, fecho, lucros, perdas são salvos. Já o fiz, e acabou por ser uma solução bastante aceitável.

 
ivandurak:

Para ela.humano

Obrigado .

1) A questão é que se aceitarmos a filosofia dos 5 e a filosofia de gestão de posições. Não sei como resolver este problema excepto para a criação de muitos objectos e a sua gestão.

2) Em 4, tudo é muito mais fácil de um ponto de vista de conveniência de programação. Basta criar um conjunto de estruturas descrevendo a ordem, cada uma das quais tem a sua própria vida, todos os dados sobre abertura, fecho, lucros, perdas são salvos. Já o fiz, acabou por ser uma solução bastante aceitável.

1) A questão é que se fizer um diário virtual (testador) de posições de gestão e contabilidade em MT5, todos os problemas com testes simultâneos de estratégias múltiplas e bloqueio (relacionados com a utilização de estratégias múltiplas), desaparecem. Além disso, pode conduzir um comércio virtual e, com base na análise do comércio virtual, fazer conclusões relativas ao comércio real, e trazer a posição total para o mercado.

Fiz tal coisa no MT5, mas não como uma biblioteca separada (classe), não vejo quaisquer problemas.

2) Em MT4 não háestruturas de matriz . No MT4, pode fazer o mesmo sem problemas, mas utilizar uma matriz bidimensional em vez da matriz de estruturas.

Talvez algo esteja misturado entre MT4 e MT5?

 
her.human:

1) Esse é o ponto, se fizer uma revista virtual (tester) de gestão e posições contabilísticas em МТ5, todos os problemas com testes simultâneos de várias estratégias e bloqueio (relacionados com a utilização de várias estratégias) desaparecem. Além disso, pode conduzir um comércio virtual e, com base na análise do comércio virtual, fazer conclusões relativas ao comércio real, e trazer a posição total para o mercado.

Fiz tal coisa no MT5, mas não como uma biblioteca separada (classe), não vejo quaisquer problemas.

2) Em MT4 não háestruturas de matriz . No MT4, pode fazer o mesmo sem problemas, mas utilizar uma matriz bidimensional em vez da matriz de estruturas.

Talvez algo esteja confuso MT4 - MT5?

Estamos a falar da mesma coisa em palavras diferentes. Limito-me a utilizar as funções comerciais da cópia MT4 como um mínimo necessário e suficiente.

Tenho aqui outro problema, como sincronizar os instrumentos de negociação para o testador de múltiplas moedas. Vou analisar os artigos.

Документация по MQL5: Торговые функции
Документация по MQL5: Торговые функции
  • www.mql5.com
Торговые функции - Документация по MQL5
 
ivandurak:

Estamos a falar da mesma coisa em palavras diferentes .

1) Utilizo apenas as funções de negociação da cópia MT-4 como um mínimo necessário e suficiente.

2) Tenho outro problema, como sincronizar ferramentas comerciais num testador multi-divisas. Vou rever os artigos.

1) Concordo. O meu ponto é o mesmo.

2) Não precisamos de sincronização para o testador. A alimentação de citações no testador é outra questão.

Qual é o problema com a sincronização? Talvez eu lhe dê uma dica.

 
her.human:

1) Concordo. É a isso que me refiro.

2) A sincronização não é necessária para um testador. As citações de alimentação no testador são um tópico diferente.

Qual é o problema com a sincronização? Talvez eu lhe dê uma dica.

Eu próprio ainda não formulei completamente a tarefa.

Para testes com várias moedas, todas as barras dos símbolos seleccionados devem ser sincronizadas num segmento de optimização seleccionado. Caso contrário, se houver uma lacuna, pode resultar em olhar para o futuro (o graal do testador no 4, sinais para um instrumento podem abrir posições para outro).

Basicamente, podemos trabalhar os detalhes da sincronização de barras, formando o nosso próprio conjunto de citações sincronizadas que serão utilizadas pelo testador.

O problema está na construção de indicadores, em que se baseiam as estratégias na maioria dos casos, porque o valor do indicador é calculado para um número de barras específico. Se conseguirmos corrigir os ficheiros com história na quarta versão, não o podemos fazer aqui.

Como alternativa, executamos a EA em modo de múltiplas moedas, o terminal sincroniza o próprio histórico, agora escrevemos o ficheiro do histórico juntamente com os valores indicadores, e se necessário mergulharemos nele, mas está a arranhar a orelha direita com a mão esquerda.

 
ivandurak:

Tenho aqui outro problema, como sincronizar as ferramentas de negociação se fizer um testador de múltiplas moedas. Vou analisar os artigos.

Existeaqui uma solução de problemas de sincronização para a conta real. Talvez lhe dê algumas ideias sobre sincronização para o seu testador.
 

O melhor até agora é acrescentar um método.

bool  HoleHistory(int Bar,string Simb) ;//метод возвращает признак дыры в истории если выбранный бар выбранного символа
      //моложе одноименного бара хотя бы одного из выбранных символов возвращaем фальсе расчеты на этом баре не производятся  
Contudo, existe ainda uma ligação ao instrumento financeiro que está a ser testado.
 
ivandurak:

Ainda não formulei a tarefa.

Para testes com várias moedas, todas as barras em símbolos seleccionados devem ser sincronizadas num segmento de optimização seleccionado. Caso contrário, se houver uma lacuna, podemos dar uma espreitadela no futuro (graal do testador no 4 - sinais para um símbolo posições abertas para outro).

Basicamente, podemos trabalhar os detalhes da sincronização de barras, formando o nosso próprio conjunto de citações sincronizadas que serão utilizadas pelo testador.

O problema está na construção de indicadores, em que se baseiam as estratégias na maioria dos casos, porque o valor do indicador é calculado para um número de barras específico. Se conseguirmos corrigir os ficheiros com história em 4, não o podemos fazer aqui.

Como alternativa, executamos a EA em modo de múltiplas moedas, o terminal sincroniza o próprio histórico, agora escrevemos o ficheiro de histórico juntamente com os valores indicadores e mergulhamos nele quando necessário.

Se bem entendi o problema.

//=============================================================================================
// Подготавливаем массивы цен с синхронизацией по времени 
void PrepareQuotes()
{
 CopyTime("EURUSD",0,0,Количество_Баров,Time);
 CopyOpen("EURUSD",0,0,Количество_Баров,OpenEU);
 for(int i=0; i<Количество_Баров; i++)
    {
     CopyOpen("EURJPY",0,Time[i],1,OpenEJ);
     CopyOpen("EURGBP",0,Time[i],1,OpenEG);
    }
}
//=============================================================================================
// Получаем значение индикатора по времени    
CopyBuffer(handle,0,Time[i],1,Buffer);

O indicador não deve ser calculado pelo número de barras, mas sim pelo tempo. Ou calcule-o você mesmo, existem suficientes bibliotecas na base.

 
Se houver um salto antes da barra para um instrumento, é melhor não fazer absolutamente nada. É fácil identificar o intervalo, basta comparar o tempo de abertura do bar com o tempo de abertura do bar em outros instrumentos.
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства позиций
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства позиций
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства позиций - Документация по MQL5