Discussão do artigo "Distribuições estatísticas no MQL5 - tirando o melhor de R" - página 10
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
O que você quer dizer com "mostrar"?
Tenho um PAMM devido ao fato de a libra não estar funcionando no momento....
Esse não é o ponto....
Estou escrevendo sobre modelos, mas não se trata de modelos - trata-se de dinheiro, como sempre, ou, mais precisamente, da certeza de seu recebimento no futuro.
Na minha opinião, o principal problema dos sistemas de negociação nos mercados financeiros não está na aplicação ou não de modelos matemáticos complexos, mas no treinamento excessivo (overfitting) desses mesmos TS. O treinamento excessivo se manifesta no fato de que, com o tempo (se não imediatamente), o TS perde seu desempenho em relação ao seu treinamento.
Para resolver esse problema, estou tentando provar que os sistemas de negociação que desenvolvi NÃO estão treinados em excesso. Ou seja, quero ter certeza de que o desempenho futuro do TS não mudará muito e, de qualquer forma, não drenará meu depósito.
Estou ocupado com isso. Todas as ferramentas necessárias para essa tarefa estão disponíveis em R em abundância. Não há nenhuma ferramenta correspondente no MKL.
Dê uma olhada no tópico de Burnakov sobre aprendizado de máquina. Lá eu postei sobre esse tópico em detalhes.
Esse é o ponto. Você pode ser uma pessoa talentosa, mas o R não permitirá que você se vire - tudo está pronto lá. Você quer se apressar e assumir a tarefa, - e aqui você - BANG! -Tenha uma solução pronta.
O excesso de oportunidades estagnará o desenvolvimento do talento de qualquer pessoa. Se não houver desafios, não haverá desenvolvimento. O que restará? - A estagnação e a inevitável degradação das habilidades.
Para uma pessoa que busca o autodesenvolvimento, é necessário fugir desse tipo de campo.
Entenda que o aprendizado de máquina não é uma panaceia. Ele pode ser inútil na negociação. Os parâmetros da estratégia podem ser ajustados no testador com a ajuda da otimização.
Talvez você queira apenas facilitar seu trabalho.
Eu entendo, mas não aceito. Você não pode ganhar mais dessa forma. Você precisa trabalhar duro.
Para resolver esse problema, estou tentando provar que os sistemas de negociação que desenvolvi NÃO SÃO TRANSFORMADOS. Ou seja, quero ter certeza de que os indicadores de desempenho futuro do TS não mudarão muito e, de qualquer forma, não drenarão meu depósito.
Estou ocupado com isso. Todas as ferramentas necessárias para essa tarefa estão disponíveis em R em abundância. Não há nenhuma ferramenta correspondente no MKL.
Isso não é bem verdade, San-Sanych.
Os bancos e os fundos de hedge usam métodos matemáticos como a "regularização de Tikhonov" para negociar opções e para outros fins. Na negociação, onde há muito ruído, esses bancos não podem fazer nada sem isso.
E justamente no R ela não está disponível (é surpreendente), ou melhor, ela está em algum lugar na Internet, mas somente na forma de um script pré-fabricado e de qualidade e precisão incompreensíveis.
http://stackoverflow.com/questions/38899849/r-packages-for-tikhonov-regularization-in-solving-least-squares-with-ill-conditi
Isso apenas mostra que :
a). os verdadeiros profissionais não tiveram nada a ver com o desenvolvimento do R;
b). tios sérios do mundo do comércio, se eles usam o sistema R em algum lugar secretamente, é apenas para protótipos de modelos de comércio muito simples.
E eles nunca ouviram falar do método Yanenko, que os bancos e os fundos de hedge às vezes usam para resolver dificuldades para cálculos de opções e gerenciamento de portfólio, no pacote R. (Atualmente, os tios que trabalham com negociação têm métodos melhores do que o método de Janenko).
Não estou nem falando dos problemas de precisão dos cálculos matemáticos em um computador em geral, e no pacote R em particular.
Quanto maior a agregação de funções e sub-rotinas (como no R), maior a probabilidade de erro sistemático de erro de cálculo.
Hoje recebemos os resultados dos benchmarks MQL5 vs R para um grande número de funções estatísticas.
O R falha de algumas vezes a dezenas de vezes. Seu código é escrito de cabeça para baixo e ninguém pensou em otimização. Na MQL5, a matemática é obviamente considerada muito mais rápida.
Assim que terminarmos de trabalhar nas bibliotecas matemáticas MQL5, publicaremos um novo artigo sobre recursos e benchmarks.
A versão beta do MetaTrader 5 build 1467 inclui uma biblioteca estatística atualizada com funções ampliadas.
Trabalhamos muito em uma verificação total da qualidade e precisão de todas as funções, tanto na versão MQL5 quanto no R original. Descobriu-se que o R usa várias funções antigas não confiáveis com otimizações que levam a erros de cálculo.
Isso foi revelado por nossos testes de unidade, que distribuímos obrigatoriamente com nossa biblioteca como scripts separados no catálogo /Scripts/UnitTests/Stat:
A grande surpresa foi uma vitória convincente na velocidade da MQL5 sobre as implementações C++ de funções em R. A aceleração varia de 1,5 a 46 vezes, embora, em média, possamos falar de uma aceleração de 3 a 7 vezes.
Isso é uma prova da alta qualidade do compilador MQL5 e permite que os traders façam cálculos dentro da plataforma muito mais rapidamente.
Como uma reflexão posterior, uma biblioteca de gráficos semelhante ao R estará disponível em breve.
Ela permite que você visualize facilmente séries de dados complexas diretamente em um gráfico:
Como uma reflexão posterior, uma biblioteca de gráficos semelhante ao R estará disponível em breve.
Ela permite que você visualize facilmente séries de dados complexas diretamente em um gráfico:
Legal!
Bezier? NURBS?
Que legal!
Bezier? NURBS?
Bezier.
Lançaremos um grande artigo com comparações de funcionalidade no R, exemplos de código e muitas imagens para demonstrar os recursos.
Voltando a este comentário, aqui estão as novas opções de exibição de gráficos no MT5 usando a biblioteca de gráficos padrão:
#include <Graphics/Graphic.mqh>
void OnStart(void)
{
double vars[101];
double results[101];
const int N=2000;
//---
MathSequence(0,N,20,vars);
MathProbabilityDensityBinomial(vars,N,M_PI/10,true,results);
ArrayPrint(results,4);
GraphPlot(results);
//---
}
Em termos de tamanho do código e das chamadas em si, tudo é quase o mesmo. 4 linhas de trabalho aqui e ali, mas o código MQL5 é melhor visto de fora.
Embora sob o capô esteja a biblioteca gráfica OOP completa CGraphic, temos algumas funções GraphPlot simples que facilitam a saída de casos simples com 1, 2, 3 séries de dados.
Mais dois estilos de saída do mesmo gráfico:
Um recurso interessante para usar funções como séries de dados:
double Func1(double x) { return MathPow(x,2); }
double Func2(double x) { return MathPow(x,3); }
double Func3(double x) { return MathPow(x,4); }
void OnStart()
{
GraphPlot(Func1,Func2,Func3,-2,2,0.05,CURVE_LINES);
}
Voltando a este comentário, aqui estão as novas opções de exibição de gráficos no MT5 usando a biblioteca de gráficos padrão:
#include <Math/Stat/Binomial.mqh>
...
Em termos de tamanho do código e das chamadas em si, tudo é quase o mesmo. 4 linhas de trabalho aqui e ali, mas o código MQL5 é melhor visto de fora.
...
Estará disponível na versão beta de hoje no MetaQuotes-Demo.