Previsão de movimentos do mercado utilizando a classificação Bayesiana e indicadores com base na análise de espectro singular

12 julho 2017, 16:54
Roman Korotchenko
1
1 517

Introdução

Hoje, com a ajuda da negociação algorítmica são realizadas cerca de 60 - 70% das transações nas bolsas de valores, enquanto no mercado FORTS e FOREX, cerca de 90%. Assim, a quota de robôs aumenta no volume de transações reais. Isto é devido ao fato de que a estratégia "comprar e aguentar" já não se adapta ao mercado moderno com flutuações ativas em intervalos de tempo curtos. Uma negociação eficiente exige uma transição do investimento passivo para a negociação ativa. O sucesso no mercado de hoje é baseado no uso de algoritmos eficientes e um conjunto de regras de sistema que permite aumentar o número de transações bem-sucedidas e reduzir o número de mal sucedidas, levando as perdas ao mínimo.

Uma maneira promissora de conseguir isso consiste na construção de um sistema de recomendação para negociar rápido com base na combinação de possibilidades de previsão com ajuda da Análise de Espetro Singular (SSA) e o método de aprendizado de máquina baseado no teorema de Bayes. O valor da abordagem selecionada reside no fato de que o processamento de dados é baseado exclusivamente nos métodos de análise estatística e não implica pressupostos infundados. Isso dá uma ideia clara das oportunidades e limitações do método, suas perspectivas na criação de um sistema de negociação automatizado. 

Durante o desenvolvimento deste sistema, o interesse foi focado na escala das unidades do tempo de 5 minutos a uma hora. Na maioria das descrições de métodos estatísticos teoricamente de sucesso, uma escala fundamentalmente maior - horas e dias - é mais popular (uma vez que reduz a contribuição do componente caótico). No entanto, tais métodos são de pouca utilidade na prática real do comércio especulativo individual.


Caraterísticas na implementação da previsão de séries temporais usando SSA

O método SSA é usado para resolver problemas como:

  • identificação das componentes principais da série temporal (tendência, sazonalidade, oscilação) e filtragem de ruído;
  • pesquisa periodicidades;
  • suavização de dados de origem usando a restrição do conjunto de componentes;
  • previsão do comportamento futuro da dependência observada.


SSA é um dos poucos métodos estatísticos utilizados quando se trabalha com séries não-estacionárias. Exemplos notáveis ​​de esse tipo de séries são as sequências de preços de mercado com suas tendências, comportamento abrupto, emissão violenta. Ao mesmo tempo, os preços são formados sob a influência de factores não aleatórios independentes que diferem em termos de importância e duração. Assumindo que o mercado a maior parte do tempo depende dessas forças, você pode usar um modelo baseado na soma de componentes de escalas diferentes que correspondem à abordagem do ССА. 

Informações sobre a base matemática do SSA e sua variante "Lagarta" pode ser encontradas em [1] (veja a lista de referências anexadas ao artigo). Do ponto de vista prático, é importante reparar em que até recentemente um dos principais motivos que influenciaram a prevalência do SSA no processamento de dados foi a ausência de algoritmos rápidos semelhantes à FFT. Esse problema já não existe, uma vez que esses algoritmos foram desenvolvidos e sua eficácia comprovada em [2] (veja a lista de referências anexadas ao artigo).

A previsão usando ССА usa o modelo de periodicidades ocultas: dividindo uma série de dados em componentes, cujo comportamento é determinado durante a análise, é possível estender esses componentes de acordo com os parâmetros de comportamento e resumir o resultado. O resultado é o resultado da previsão, e sua qualidade depende de quão bem o conjunto inicial de componentes define os dados originais. Naturalmente, a previsão não será confiável para uma série caoticamente volátil, mas será justificada para os preços formados sob a influência de fatores estáveis ​​e com um ruído relativamente pequeno. Além disso, não é aconselhável confiar na análise estatística quando se lida com instrumentos negociados de forma pouco ativa. Em tais casos, é imprevisível e perigosa influência de fatores individuais e dos "grandes" participantes.


Combinando indicadores para melhorar a confiabilidade da previsão

No que diz respeito à ideologia considerada, foram desenvolvidos três indicadores com previsão. identificação da tendência e sua previsão SSA Trend Predictor e Fast Forecast com base em transformação rápida, SSACD (modificação do MACD) e SSA Stochastic. Cada indicador está disponível em duas versões, isto é: uma simplificada e outra ampliada. 

Como todos os indicadores usam os mesmos dados, mas se concentram em diferentes características do processo, cada um tem suas vantagens e desvantagens. Surge o desejo natural de combinar os indicadores e alcançar sinergia, para aumentar a eficiência, robustez e precisão da avaliação da situação como um todo.

Do ponto de vista da estratégia especulativa, torna-se óbvia e essencial a resposta à pergunta: «aonde irá o preço no futuro próximo?». Há três opções: o preço vai aumentar, diminuir ou flutuar.

Para o indicador que prevê o preço de acordo com a tendência identificada, é óbvio que o análogo da derivada deve ser positivo ou negativo quando o preço cresce ou cai. Ao definir o nível de erro do EPS, pode ser definida a condição: se a "derivada" estiver na proximidade de zero com o raio epsilon (EPS), a alteração do preço será insignificante.

O indicador SSACD é uma modificação do MACD, corrigido para evitar o atraso da informação, o que é comum nas médias móveis. Para evitar o uso de muitos termos, a seguir, será referido como MACD. O MACD é exibido no gráfico como um histograma e sua média móvel exponencial suavizada. Signal. Consequentemente, as mudanças na linha suavizada estão ligeiramente atrasadas em relação ao MACD. Portanto, (MACD-Signal)> 0 se o preço aumentar, e (MACD-Signal) <0 se ele cair. Definindo uma certa proximidade de EPS em relação ao zero, definimos a zona de transição do comportamento instável do preço.

Indicador «SSA Stochastic» — oscilador estocástico rápido modificado, no qual, como no caso anterior, foi removido o atraso. O comportamento típico para as linhas estocásticos consiste no seu alinhamento em relação à tendência local. Ou seja, a formulação de condições para o aumento, diminuição e comportamento instável do preço é possível através da "derivada" do estocástico: maior ou menor que zero, dentro da proximidade de epsilon.

Como os indicadores fornecem uma previsão local, os valores estimados dos indicadores discutidos acima fornece informações sobre o comportamento dos preços no futuro próximo. A semelhança nas leituras dos indicadores aumenta a confiabilidade da previsão e reduz a probabilidade de erros.

Para verificar quão correta a abordagem escolhida, deve ser avaliada em dados históricos como uma combinação de indicadores que permite reduzir o número de erros de previsão críticos. Quando se fala em o erro, faz-se referência a uma situação em que a previsão dá uma direção para o futuro próximo, mas o preço muda na outra direção.

Os usuários, que já estão trabalhando com os indicadores discutidos acima, certamente estarão interessados em que valores - e em que base - foram selecionados para os parâmetros de controle. Mas, como, para nós, o importante é prever o ponto mais próximo, não precisamos de uma seleção especial e demorada destes parâmetros. Para o indicador são adequados parâmetros que: igualem seu comportamento com a parte principal (não preditiva) da série, combinem a suavização e pormenorização no comportamento dos preços e sejam apropriados para uma ampla gama de instrumentos de negociação. Foram selecionados:

  1. Para prever o preço segundo a tendência (SSA Fast Trend Forecast, versão 2.5):
    Algorithm: Recurrent forecast,
    N: Data fragment = 256,  
    Time-dependent lag = N/3,
    Trend    high-freq. limit= 0.25,
    Forecast high-freq. limit= 0.25,
    Forecast transform = S[i]/Max(:),
    Forecast smoothing = Smoothing MA(3).
  2. Para SSACD Forecast (Limited)  versão 2.5:
    Algorithm: Recurrent forecast,
    N: Data fragment = 512,  
    Time-dependent lag = N/4,
    FastTrend high-freq. limit = 0.4
    SlowTrend high-freq. limit= 0.6
    Signal SMA period = 4
    Data preparation = {ln(S[i]-Smin+1)}/Max(:)
    Forecast preparation = S[i] /Max(:)
    Forecast smoothing = Smoothing MA(3).
  3. Para SSA Stochastic (Limited) versão 2.0:
    Algorithm: Recurrent forecast,
    N: Data fragment = 256,  
    Time-dependent lag = N/4,
    %K high-freq. limit = 0.3,
    %D high-freq. limit = 0.6,
    Data preparation = S[i] /Max(:),
    Forecast smoothing = Smoothing MA(3).

Fragmentos de dados históricos - para a análise - foram tomados em intervalos de tempo diferentes:

para futuros GOLD nos períodos 5M, 15M, 1H;

BRENT — 5M, 15M;

Si-USD/RUB — 15M,

para cotações forex EUR/USD — 15М.

Diversos instrumentos de negociação com diferentes períodos foram processados ​​usando parâmetros invariáveis do indicador, o que permitiu considerar a sustentabilidade e a qualidade das leituras previstas. A iteração sobre a série de dados de comprimento de cerca de 1000 pontos com o cálculo da previsão em cada ponto do histórico proporcionou uma oportunidade para comparar as previsões e os fatos.

Ilustramos nos gráficos os resultados das previsões dos indicadores de acordo com os dados dos preços de fechamento.


Fig. 1. Fragmento de correspondência do preço de encerramento real, do valor de previsão - para ele - e do valor previsto de acordo com três pontos.

Na Fig. 1, pode ser visto que a previsão "segundo a tendência" tem um ligeiro atraso a maior parte do tempo. O que não é surpreendente, uma vez que a previsão do preço segundo a tendência é definida tendo em consideração aplicabilidade universal para diferentes instrumentos de negociação e tem um efeito de suavidade a favor da filtragem de parte substancial das oscilações de alta frequência. Tal comportamento da previsão é válido para outros instrumentos (BRENT, GOLD) em diferentes escalas de tempo (5 minutos e 1 hora).

Comparamos a previsão de outra avaliação de indicador (MACD-Signal) com seu valor real.


Fig. 2. Fragmento de valores reais e previstos do indicador exibindo a direção da evolução do preço segundo o indicador MACD 


Fig. 3. Correspondência entre a tendência da mudança dos preços e a previsão da mudança do preço segundo o MACD

A borda de incerteza da direção (EPS) foi ajustada para 0,25 do padrão dos valores normalizados (pela amplitude máxima) da série (MACD-Signal).

O fragmento de comparação das previsões estocásticas e preliminares formadas em cada ponto com a ajuda do indicador "SSA Stochastic" é mostrado na figura a seguir.


Fig. 4. Valores reais e previstos para o Stochastics 

A figuras 2 e 4 mostram um sincronismo quase completo entre as previsões e a concretização real de acordo com os dados dos indicadores SSACD e SSA Stochastic. É provável que encontrar novamente isso no caso de implementar previsão SSA para muitos indicadores de oscilador.

Como as previsões do preço, apresentadas na Fig. 1 contêm um conjunto de erros quanto a tendência, aclaramos como a combinação de indicadores ajuda a reduzir o número de erros desse tipo. A diferença nos valores do preço real e o previsto na Fig. 1 não tem um valor significativo, porque, se nós estamos numa posição coordenada, isto não leva a perdas. 

Existem valores: (MACD-Signal), derivadas diferenciais para séries do preço real e previsto, e estocástico, suavizadas por três pontos. Para analisar quão eficaz é sua combinação, a seguir, é utilizado o conjunto de condições - previamente definidas - que indicam a direção da mudança do preço. 


Fig. 5. Comparação entre as direções reais e previstas quanto à alteração do preço ao utilizar três indicadores

 

Fig. 6 Erros graves no prognóstico quanto à direção da alteração do preço no caso de previsão só segundo a tendência


Fig. 7. Erros no prognóstico para a combinação de previsões de preço segundo a tendência e (MACD-Signal)


Fig. 8. Erros no prognóstico para a combinação de previsões de preço segundo a tendência, MACD e Estocástico

Fig. 6 - 8 mostram o efeito sinérgico dos três indicadores, ou seja, o número de erros de previsão cai não menos do que 5 - 7 vezes no caso de valores semelhantes de funcionalidades de indicador. 


Classificador Bayesiano de prováveis movimentos de preço com base na leituras previstas dos indicadores

O teorema de Bayes é apresentado no curso básico de teoria da probabilidade e relaciona a probabilidade condicionada   do evento x desde que tenha ocorrido o evento y.

Por definição:  ,  onde   – é a probabilidade x e y, enquanto p(x) e p(y) — probabilidade de cada evento individualmente. Assim, a probabilidade conjunta pode ser expressa de duas maneiras:

Teorema de Bayes:

Teorema de Bayes

 

Para a situação considerada em relação à previsão da direção do movimento do preço com base em indicadores, o teorema pode ser reescrito da seguinte forma:


Onde:

V — evento que corresponde ao movimento real do preço numa determinada direção (sinal de sua mudança). Três opções possíveis: V1= -1 «para baixo», V2 = 0 «incerto», V3 = +1 «para cima».

F — evento correspondente ao sinal da derivada estocástica prevista (três opções possíveis: F1 = -1 «para baixo», F2 =0 «incerto», F3 = +1 «para cima»).

M — evento correspondente à previsão do sinal (MACD-Signal), consistente com o comportamento do preço (três opções possíveis): M1 = -1 «para baixo», M2 =0 «incerto», M3 = +1 «para cima»),

S — evento correspondente ao sinal da derivada estocástica prevista (três opções possíveis: S1 = -1 «para baixo», S2 =0 «incerto», S3 = +1 «para cima»).

A parte esquerda da fórmula pode ser traduzida para uma forma legível por humanos da seguinte maneira: «Qual é a probabilidade de que o preço se mova na direção Vk={-1,0,1}, se os indicadores de previsão fornecem valores específicos de F, M, S ?».  

Em seguida, para simplificar a apresentação, diremos que os indicadores tomam os valores de -1, 0, +1, o que implica o sinal da derivada ou o sinal de (MACD-Signal). 

Para avaliar e comparar as probabilidades de que o preço desça, suba ou permaneça flutuando ligeiramente, é necessário conhecer os valores no lado direito da fórmula. Para fazer isso, resolvemos dois problemas:

  1. efetuamos o «treino» sobre os dados históricos,
  2. examinamos a «estabilidade» dos resultados do treino sobre dados fora do intervalo de treinamento.

Variantes de treinamento foram realizadas em diferentes fragmentos de dados, em diferentes prazos e instrumentos. A amostra de treinamento tinha um comprimento de várias centenas de barras. Os resultados foram semelhantes, como se podia esperar da universalidade dos parâmetros selecionados dos indicadores considerados na terceira seção do artigo.

Vamos ilustrar os resultados na análise de dados de preço de "fechamento" do futuro USD/RUB 15 M. 

Nós nos restringimos a estudar a probabilidade de o preço ir "para cima" e "para baixo", pois esses dois valores são usados ​​como base para tomar uma decisão sobre a abertura ou o fechamento de uma transação.

É suficiente claro que, no caso de um movimento real do preço na direção descendente, os sinais do indicador também devem ser negativos ("para baixo") ou perto de zero ("neutros"). Isso é confirmado pela primeira avaliação das probabilidades condicionadas de eventos de previsão conjuntos quando o preço cai. No entanto, outras probabilidades, obtidas a partir dos resultados do treinamento sobre os dados do futuro USD/RUB-15M, indicam a possibilidade de desvios dos valores esperados, apresentados nas Tabelas 1, 2.


Os resultados dos cálculos baseados na fórmula de Bayes fornecem uma informação interessante no que diz respeito à distribuição da probabilidade de movimento real dependendo dos valores dos indicadores. As probabilidades condicionadas máximas dos preços indo para baixo (evento V1 = -1) e para cima (evento V3 = +1) dependendo dos valores previstos são apresentadas nas tabelas 3 e 4.


As condições de classificação serão simples: se a probabilidade condicionada de um evento de "movimento para baixo" for maior do que 0,5 no momento atual e, ao mesmo tempo, for maior do que a probabilidade de um "movimento para cima", a previsão do movimento indica para baixo. Condição similar para previsão do movimento de preço «para cima».

Apresentamos o resultado do treino na forma de um gráfico de preço com rótulos de classificação.


Fig. 9. Classificação prevista do movimento do preço do futuro USD/RUB-15, calculada nos materiais de treino. 

Os resultados da classificação apresentados na Fig. 9 são notáveis: a previsão da direção para o futuro mais próximo consegue alternar rapidamente o ponteiro da direção do movimento e mantê-lo. 

Resta considerar a pergunta mais importante, isto é: quão estáveis os resultados do treino apresentados pela matriz de probabilidades condicionadas P(V|FMS), para que elas sejam estendidas para uma situação externa (em relação aos dados de treino).

Para testar a estabilidade, tomamos as séries históricas de outros instrumentos de negociação e em outras escalas de tempo. Conhecendo as leituras previstas dos indicadores para cada momento individualmente, executamos a classificação de acordo com a direção, enquanto usamos a matriz de probabilidades condicionadas já pronta e calculada para o futuro USD/RUB-M15. Comparamos o resultado de classificação com a situação real.


Fig. 10. Classificação prevista do movimento da cotação EUR/USD-15M (treinado sobre o futuro USD/RUB-15M)


Fig. 11. Classificação prevista para o futuro GOLD-15M (treinado sobre o futuro USD/RUB-15M)


Fig. 12. Classificação prevista para o futuro GOLD-5M (treinado sobre o futuro USD/RUB-15M)


Fig. 13. Classificação prevista para o futuro BRENT-5M (treinado sobre o futuro USD/RUB-15M)

Os resultados apresentados nas Fig. 10 - 13 parecem muito otimistas. O classificador preparado no futuro USD/RUB-15M é relevante para outras escalas de tempo e para outros instrumentos de negociação.


Sistema de recomendação baseada no classificador Bayesiano

Com base no classificador apresentado é possível projetar uma recomendação construtiva, e, em seguida, um sistema de negociação com um pequeno número de parâmetros de controle. Um número limitado de parâmetros permite a otimização eficaz. 

A fim de não fazer algo sem fundamento, consideramos a situação de implementação do sistema em dados históricos. Claro, o resultado tem pouco a ver com a situação real, porque tudo está simplificado em principio, mas ele mostra o potencial inerente.

Há 4 parâmetros de controle principais:

  1. Risk Ratio — nível stop como múltiplo da volatilidade.
  2. Risk Fix     — flutuação permitida na direção oposta ao abrir uma negociação e manter uma posição rentável (como um múltiplo da volatilidade).
  3. Probability Trade Min — probabilidade aceitável para manter a transação.
  4. Probability Trade OK — probabilidade, na qual se recomenda a transação.


Neste caso, a volatilidade será medida usando a média quadrática da diferença entre os preços de abertura e de fechamento no fragmento dos dados processados. O nível stop vinculado ao preço de fechamento anterior é deslocado numa direção. A decisão sobre a entrada e saída de uma posição é tomada após o fechamento de uma barra

Com base nas recomendações do sistema treinado sobre os dados do futuro USD/RUB-15M, foi executada a simulação da negociação usando o futuro GOLD-15M, de acordo com o histórico de preços de "fechamento" apresentado na Fig. 11, e classificação prevista monitorada utilizando os parâmetros de controle 3 e 4. Os gráficos apresentados a seguir mostram a variação no rendimento dependendo do "tempo" medido em número de barras. 



Fig. 14. Influência do valor da probabilidade de recomendação de transação sobre a rentabilidade da negociação usando um futuro separado GOLD-15M (treinado sobre o futuro USD/RUB-15M)



Fig. 15. Influência do parâmetro do nível stop sobre a rentabilidade da negociação usando um futuro separado GOLD-15M (treinado sobre o futuro USD/RUB-15M)



Fig. 16. Influência do valor da probabilidade de recomendação de transação sobre a rentabilidade da negociação usando uma cotação separada EUR/USD-15M (treinada sobre o futuro USD/RUB-15M)

Os resultados de simulação mostrados nas Fig. 14 - 16 mostram um aumento constante da rentabilidade sem perdas. A influência dos valores dos parâmetros no crescimento da rentabilidade indica a possibilidade e a eficiência da otimização. 


Programa de avaliação rápida da dinâmica do mercado

No próximo artigo serão descritos a estrutura, as regras e os resultados de testar o sistema de negociação automática. No entanto, aqui seria lógico fornecer um módulo de software projetado para avaliação rápida da situação e "recomendações" no processo de negociações reais. O trabalho vem com um módulo que resolve o problema de classificação e funciona com diferentes pares de indicadores: a) SSACD Forecast Limited e SSA Stochastic Limited, b) SSACD Forecast e SSA Stochastic . Versões do SSACD devem ser pelo menos a 2.5, enquanto o Stochastic, pelo menos a 2.0 x. Caso as versões completas dos indicadores sejam usadas, o programa permite uma melhor personalização dos parâmetros de controle de classificação e fornece as opções de treinamento sobre dados diferentes, o que permite selecionar o modelo "mais próximo" preparado para a classificação prevista. A previsão "segundo a tendência" é realizada dentro do módulo, portanto, não é necessária uma instância separada do indicador SSA Fast Trend Forecast.  

Note-se, no entanto, que o programa usa o modelo incorporado e, portanto, não garante, mas sim ajuda a avaliar a possibilidade de desenvolvimento do preço para instrumentos negociados ativamente. Não se deve confiar na previsão estatística do preço para situações com um pequeno número de transações, uma vez que os estímulos individuais podem ter um impacto demais. O mesmo se aplica a intervalos de tempo ou períodos em que o preço tem um comportamento "gap".

O Expert é chamado pelo "SSA Bayes Observer" e, ao ser executado, pede definir os valores dos parâmetros considerados acima.

Fig. 17. Execução do programa SSA Bayes Observer com parâmetros "por padrão"

Além dos valores do "Observer", é possível definir os parâmetros para os indicadores de previsão segundo a tendência, isto é, SSACD e SSA Stochastic. Seu significado e propósito foram discutidos nas descrições dos próprios indicadores, mas é possível confiar nos valores padrão predefinidos.

Se os indicadores SSACD e SSA Stochastic da última versão estão instalados no sistema, o usuário verá uma interface semelhante à seguinte:

Fig. 18. Interface do programa SSA Bayes Observer 

As configurações atuais podem ser alteradas enquanto o programa está sendo executado, selecionando a aba correspondente.

Fig. 19. Parâmetros de classificação 


O modelo, com base no qual ocorre a classificação, pode ser selecionado na aba "Modelos":

Fig. 20. Aba para selecionar o modelo de treinamento

Os parâmetros de controle apresentados nas Fig. 18 - 20 podem ser ajustados enquanto o programa está sendo executado. Os modelos de treinamento podem ser selecionados se estiverem disponíveis as versões completas dos indicadores SSACD e SSA Stochastic.

Durante o processo o usuário pode observar uma interface similar à seguinte:


Fig. 21. Modo de trabalho do programa SSA Bayes Observer 

Como pode ser visto na Fig. 20, na linha inferior da janela de interface, são exibidos FIX e STOP, ou seja, os níveis para os diferentes modos de negociação. Seu sentido está baseado no fato de ter que sair da posição se o preço sair para além dos limites. O nível FIX foi projetado para situações em que a transação é desenvolvida com sucesso. O nível STOP implica um fechamento incondicional de uma posição. Assume-se que a decisão de sair da posição é tomada após o intervalo de tempo analisado ser concluído (rótulo READY).

Fim do artigo

Este trabalho apresenta uma metodologia e um algoritmo a fim de construir um sistema de recomendação para negociar rápido com base na combinação de possibilidades de previsão com ajuda da Análise de Espetro Singular (SSA) e o método de aprendizado de máquina baseado no teorema de Bayes. Realizada simulação para determinar a viabilidade de aplicar um sistema treinado num conjunto de dados para analisar séries temporais de outra escala e outros instrumentos financeiros. Apresentado um programa que permite considerar a viabilidade - na prática - da aplicação do método para a análise de dados reais. A descrição da estrutura do programa e a explicação do código serão fornecidas no próximo artigo.

A prática de aplicar a classificação em tempo real revelou uma série de problemas que devem ser resolvidos para formular uma estratégia adequada para automação da negociação. Eles também serão discutidos na próxima parte do trabalho.

Quero expressar gratidão especial para Anatoli Kazharski pelo desenvolvimento da interface gráfica [3], cuja implementação evitou o gasto de tempo inecessário, bem como para os especialistas que forneceram a implementação MQL da excelente biblioteca matemática ALGLIB [4]. 

Lista de referência

  1. Golyandina N.E. O método "Lagarta"-SSA: previsão de séries temporais. Guia de estudo. São Petersburgo, 2004.
  2. Korobeynikov, A. Computation- and space-efficient implementation of SSA. // Statistics and Its Interface. 3, 2010, 3, 357-368.
  3. https://www.mql5.com/pt/articles/3173
  4. https://www.mql5.com/pt/code/1146

Traduzido do russo pela MetaQuotes Software Corp.
Artigo original: https://www.mql5.com/ru/articles/3172

Arquivos anexados |
SSABayesObserver.ZIP (3204.64 KB)
Últimos Comentários | Ir para discussão (1)
Leprechaun
Leprechaun | 27 jul 2017 em 02:51

привет Я прочитал вашу статью, поздравления. У меня возникли проблемы при компиляции исходного кода, приведенные растровые изображения подкаталоги не вместе файл. Как я могу получить недостающие файлы? Я отправлю картину в журнал ошибок. спасибо


Exemplo de indicador que constrói uma linha de suporte e resistência Exemplo de indicador que constrói uma linha de suporte e resistência

O artigo mostra a implementação de um indicador para construção de linhas de suporte e de resistência com base em condições formais. Você não só poderá aplicar o indicador, mas também entenderá quão fácil é realizá-lo. Agora você será capaz de formular as condições para desenhar linhas alterando o código do indicador ligeiramente para atender às suas necessidades.

Interfaces gráficas X: Seleção de texto na caixa de texto multilinha (build 13) Interfaces gráficas X: Seleção de texto na caixa de texto multilinha (build 13)

Este artigo implementará a possibilidade de selecionar o texto usando várias combinações de teclas e excluir o texto selecionado, da mesma maneira que é feito em outros editores de texto. Além disso, vamos continuar com a otimização do código e prepararemos as classes para avançar para o processo final do segundo estágio da evolução da biblioteca, onde todos os controles serão renderizados como imagens separadas (telas).

Expert Advisor multiplataforma: Gerenciador de ordens Expert Advisor multiplataforma: Gerenciador de ordens

No artigo, é discutida a criação de um gerenciador de ordens para um EA de negociação multiplataforma. O gerenciador de ordens é responsável pela abertura e fechamento de ordens ou posições efetuadas pelo Expert Advisor, bem como pela manutenção de seus registros independentes, e estará disponível para ambas as versões do terminal.

Expert Advisor multiplataforma: Sinais Expert Advisor multiplataforma: Sinais

No artigo, são discutidas as classes CSignal e CSignals, que serão usadas em Expert Advisors multiplataforma. Além disso, serão examinadas as diferenças entre MQL4 e MQL5 quanto à organização de dados necessários para avaliar os sinais de negociação obtidos. O resultado será um código compatível com os compiladores das duas versões.