O sistema de comércio mecânico perfeito.

 
Olá programadores e codificadores, filósofos e pragmáticos :) Proponho desenvolver uma idéia de criar um subgame.
Para isso compartilharemos nossos pensamentos e tentaremos escrever em conjunto esta incrível maravilha :)
Em geral, em ordem. Sobre mim: não sou um programador, mas tenho uma grande experiência comercial (mais de 5 anos) e estou completamente satisfeito com a minha negociação e o meu ganho. Mas mesmo depois de todos esses anos, sempre chego à conclusão de que a experiência e o conhecimento dos mercados financeiros é impossível de compreender completa e completamente. Há sempre um processo de aprendizagem. O que muda com o tempo? A porcentagem de conclusões intuitivas e analiticamente corretas sobre a direção do mercado. Provavelmente é tudo. Como todos vocês, eu provavelmente tenho procurado por grãos há muito tempo e me convenci de sua ausência, assim como vocês. Na verdade, o fim da demogogia - voltemos ao tema :).
E assim. Tomemos a priori a regra de que existem muitos sistemas comerciais mecânicos lucrativos, e em um certo período de tempo e para uma certa moeda, os mts podem dar bons resultados. É por isso que qualquer sistema mecânico que utilizemos como base, o principal que deve estar nele - não um único parâmetro de ajuste do usuário. Todos os parâmetros devem ser calculados independentemente, ou seja, será um sistema de comércio mecânico automático (AMTS) que é otimizado de acordo com o mercado volátil.
Neste ramo, proponho compartilhar minhas idéias sobre este assunto e escrever pouco a pouco algumas partes do código que implementariam as etapas de otimização.
Repito - não sou um programador, por isso vou começar com as coisas simples.
Vamos dividir os parâmetros auto-ajustáveis da AMTS em principais e adicionais.
Básico:
1. Número de lotes.
2. Tirar proveito
3. Parar a perda
4. Parada de trilha
Adicional
5. Todos esses parâmetros com base nos quais AMTS será escrito.

Como base da MM tomaremos: entrada 5% do patrimônio líquido, fator de lucro não inferior a 2, tomar lucro e razão de stop loss: 60/40.
1. Bem primeiro, o número de lotes em muitos sistemas é implementado: esta é a função LotOptimizator.
Vamos supor que nosso sistema será intradiário, respectivamente.
2. Take Profit será calculado como 70% da média diária do movimento de preços do último mês.
3. Stop Loss, respectivamente, como 40% do Take Profit.
Sugiro calcular os níveis de Stop Loss e Take Profit às 01:00 da manhã, depois de ir para o dia seguinte.

Em geral, se o tema for interessante, vamos expressar nossas idéias.
 
A rede neural pode ser reeducada em cada novo bar. Ou reciclá-lo. A tarefa se resume a construir o modelo.
 

A rede neural pode ser reeducada em cada novo bar. Ou reciclá-lo. A tarefa se resume a construir o modelo.

Você deve ter trabalhado com redes neurais. E você sabe que as redes neurais multicamadas não aprendem rapidamente. E, se os prazos forem curtos, a rede não terá tempo suficiente para encontrar uma solução.
Não tenho trabalhado com redes neurais, estou apenas lendo. Quanto progresso você já fez?

Minha idéia nesta direção é o algoritmo genético auto-adaptativo LGAP. Estou trabalhando nisso. Dll quase pronto - modelo.
 
Meu imho - seria um ajuste. Eu tentei redes neurais. Não foi muito útil, para ser honesto. E eu usei uma muito boa!

A idéia é sempre do comerciante, pois não se pode prescindir de um raciocínio fundamental aqui. E uma rede estará envolvida no ajuste de dados - tem muitos graus de liberdade - eu o verifiquei na prática.
 
kniff писал (а):
Meu imho - seria um ajuste. Eu tentei redes neurais. Não foi muito útil, para ser honesto. E eu usei uma muito boa!

A idéia é sempre do comerciante, pois não se pode prescindir de um raciocínio fundamental aqui. E uma rede estará envolvida no ajuste de dados - tem muitos graus de liberdade - eu o verifiquei na prática.

É assim que deve ser. O mercado é volátil: volatilidade, volumes, faixas de preço. Os parâmetros têm que mudar rapidamente.
 
quality писал (а):
Olá programadores e codificadores, filósofos e pragmáticos :) Proponho desenvolver uma idéia de criar um subgame.

Pessoalmente, estou muito interessado neste assunto! Pronto para participar de todas as formas!

Sobre os parâmetros de auto-ajuste: com tudo básico é claro, mas o que tomar como base para parâmetros adicionais, ou seja, que indicadores, níveis, canais, ou o quê?

Eu tinha essa idéia:
- colocar vários indicadores no gráfico (por exemplo, RSI, Stoch, CCI, MACD, etc.) captam "aproximadamente" os valores desses indicadores;
- então, olhe para a história para obter reversões de preços aproximadas (ou seja, onde é claramente visível "aqui temos que comprar, aqui temos que vender");
- depois anote os valores de todos os indicadores nestes pontos, para comprar e vender, em uma matriz ou em um arquivo;
- Além disso, no Expert Advisor - verifique (levando em conta o desvio dos valores dos indicadores em porcentagem em relação aos valores ideais), ou seja, por exemplo, na matriz, o valor RSI para compra acabou sendo 20, então, se a porcentagem de disparo for 10, então a compra disparará de 18 a 22, assim como com todos os outros indicadores;
- Dale, você pode (ou deve:) também adicionar aos indicadores de cruzamento de verificação de diferentes níveis ou suas linhas de sinal;

Eu mesmo ainda não chequei (embora tenha começado a escrever uma EA experimental, ainda não tenho resultados), então não posso dizer nada sobre isso funcionando ou não.
 
quality писал (а):

É assim que deve ser o ajuste. O mercado é volátil: volatilidade, volumes, faixas de preço. Os parâmetros têm que mudar rapidamente.

A propósito, parâmetros de todos os indicadores (neste caso, teremos que fazê-los auto-ajustar também, mas como, não sei ainda). No meu exemplo (acima) você pode tentar alterar a porcentagem de desvio dos valores dos indicadores em relação ao ideal, ou seja, tentar acompanhar as mudanças do mercado, você pode e provavelmente deve adicionar novas combinações de valores de indicadores à matriz (arquivo).
 
Eu mesmo venho pensando nisso há muito tempo. Se houver idéias boas e bem fundamentadas, eu estou pronto para implementá-las. No momento, estou muito interessado nas idéias de padrões delineadas no 'Self Learning EXPERT ', em combinação com uma rede neural.
 
kniff, parece-me que a correspondência da história é uma coisa muito, muito útil se for apropriada ao TEMPO. Isto é, se o sistema se adaptar com rapidez suficiente. Portanto, não há necessidade de ter medo disso. É melhor pensar em como se adaptar à história com rapidez suficiente. Por exemplo, o sistema possui algum vetor de ajustes X. A cada momento do tempo t, para este vetor existe algum valor ótimo X' que não muda muito rapidamente. Isto é, X'(t0) está próximo de X'(t1), se t0 e t1 estão próximos. Se no tempo dt=t1-t0, o sistema consegue determinar corretamente o valor de X'(t0), então no tempo t1 será o valor da configuração. Isto é, não ideal (o valor ideal será X'(t1)), mas próximo o suficiente do ideal. A este respeito, aqui está uma pergunta para meus colegas que estavam bastante empenhados em testes (infelizmente, não posso me vangloriar com isso). Quão abruptamente os sistemas ingênuos (não adaptativos, rigidamente ajustáveis) começam a falhar quando as condições de mercado mudam? Existe algum tipo de ponto de transição da rentabilidade para a queda? Ou isso acontece de forma abrupta e catastrófica?
 
favoritex, você poderia desenvolver o que é LGAP? Não consegui encontrar nada sobre isso em Yandex, exceto uma menção de que é tal coisa. E o contexto da menção me pareceu interessante.
 
eugenk1:
Parece-me que o ajuste da história é uma coisa muito, muito útil se for adequado ao TEMPO. Isto é, se o sistema se adaptar com rapidez suficiente. Portanto, você não precisa ter medo disso. É melhor pensar em como se adaptar à história com rapidez suficiente. Por exemplo, assim: o sistema possui algum vetor de ajustes X. Cada momento do tempo, este vetor tem algum valor ótimo X', que não muda muito rapidamente. Isto é, X'(t0) é próximo de X'(t1), se t0 e t1 são próximos. Se no tempo dt=t1-t0, o sistema consegue determinar corretamente o valor X'(t0), então no tempo t1 será o valor das configurações, ou seja, não ideal (ideal será X'(t1)), mas próximo o suficiente do ideal. A este respeito, aqui está uma pergunta para meus colegas que estavam bastante empenhados em testes (infelizmente, não posso me vangloriar com isso). Quão abruptamente os sistemas ingênuos (não adaptativos, rigidamente ajustáveis) começam a falhar quando as condições de mercado mudam? Existe algum tipo de ponto de transição da rentabilidade para a queda? Ou isso acontece de forma abrupta e catastrófica?
Isto é exatamente o que eu gostaria, mas não :( Aparentemente, tudo depende do sistema. Até o momento, tenho a impressão de que tudo acontece exatamente "de forma abrupta e catastrófica". Em geral, tente a Phoenix com configurações padrão - antes de 13 de fevereiro deste ano 100% de perda, e depois - começa abruptamente um alto nível de rentabilidade com alta - estabilidade. Imagine a transição inversa.