
A estratégia de negociação quantitativa de estado de conversão de probabilidade de Malkovich é uma estratégia de negociação inovadora baseada no modelo de cadeia de Malkovich. A estratégia usa a probabilidade de conversão de estado da cadeia de Malkovich para prever o movimento do mercado e, com base nisso, tomar decisões de negociação. A ideia central da estratégia é dividir o estado do mercado em vários estados dispersos (como alta, baixa e travessia) e, em seguida, calcular a probabilidade de conversão entre esses estados com base em dados históricos, o que prevê um possível estado de mercado.
A particularidade deste método é que ele considera não apenas o estado atual do mercado, mas também a dinâmica de transição entre os estados do mercado. Com a introdução de modelos de probabilidade, a estratégia é capaz de capturar melhor a incerteza e a volatilidade do mercado, permitindo decisões de negociação mais flexíveis e adaptáveis em diferentes ambientes de mercado.
Definição de estado: a estratégia define o estado do mercado em três tipos - o mercado de touros (crescimento), o mercado de touros (diminuição) e o mercado horizontal (estabilidade). Esses estados são determinados pela comparação do preço de fechamento atual com o preço de fechamento anterior.
Probabilidade de conversão: A estratégia usa 9 parâmetros de entrada para definir a probabilidade de conversão entre diferentes estados. Por exemplo,prob_bull_to_bullIndica a probabilidade de continuar a ser um mercado de touros.
Lógica de conversão de estado: a estratégia usa uma lógica de conversão simplificada para simular o processo de conversão de estado da cadeia de Markov. Ela usa um contador.transition_counterA simulação da conversão de probabilidade.
Geração de sinais de negociação: com base no estado atual, a estratégia gera sinais de compra, venda ou liquidação. Quando o estado é um mercado de touros, a estratégia começa a fazer mais; Quando o estado é um mercado de ursos, a estratégia começa a ficar vazia; Quando o estado é horizontal, a estratégia elimina todas as posições.
Modelagem de probabilidade: Com a introdução de modelos de cadeia de Markov, a estratégia consegue capturar melhor a aleatoriedade e a incerteza do mercado, algo que é difícil de realizar com métodos tradicionais de análise técnica.
Flexibilidade: A estratégia pode ser adaptada a diferentes ambientes de mercado, ajustando os parâmetros de probabilidade de conversão, o que a torna mais adaptável.
Consideração de vários estados: Comparado com a estratégia de acompanhamento de tendências simples, a estratégia considera três estados de mercado (aumento, queda e horizontal) e permite uma compreensão mais abrangente da dinâmica do mercado.
Gerenciamento de riscos: A estratégia inclui um mecanismo de gerenciamento de riscos que ajuda a controlar os potenciais prejuízos, eliminando posições em posição horizontal.
Interpretabilidade: Apesar do uso de modelos de probabilidade, a lógica da estratégia é relativamente simples e clara, facilitando a compreensão e o ajuste dos comerciantes.
Sensibilidade de parâmetros: o desempenho da estratégia é altamente dependente do parâmetro de probabilidade de conversão definido. A configuração inadequada de parâmetros pode levar a sinais de negociação errados.
Atraso: Como a estratégia baseia-se no preço de fechamento para avaliar o estado, pode haver um certo atraso, podendo perder importantes pontos de inflexão em mercados em rápida mudança.
Simplificação excessiva: Embora o modelo de cadeia de Markov possa capturar algumas dinâmicas de mercado, ainda é uma simplificação de mercados financeiros complexos, podendo ignorar alguns fatores de mercado importantes.
Negociação frequente: Dependendo da frequência da mudança de status, a estratégia pode gerar muitos sinais de negociação, aumentando os custos de negociação.
Adaptabilidade ao mercado: em certas condições de mercado (como mercados de tendência de longo prazo ou de alta volatilidade), a estratégia pode não funcionar bem.
Introdução de mais estados: pode-se considerar a introdução de mais estados de mercado, como alta forte, alta fraca, etc., para traçar a dinâmica do mercado com mais precisão.
Probabilidade de ajuste dinâmico: um mecanismo pode ser desenvolvido para ajustar dinamicamente a probabilidade de conversão com base no desempenho recente do mercado, tornando a estratégia mais adaptável.
Integração com outros indicadores técnicos: Indicadores técnicos tradicionais como a média móvel e o RSI podem ser incorporados na lógica de julgamento de estado, aumentando a precisão da previsão.
Otimização da lógica de julgamento de estado: pode-se usar lógica mais complexa para julgar o estado do mercado, como considerar as mudanças de preço em vários períodos de tempo.
Introdução de um Stop Loss: Incluir um Stop Loss em uma estratégia para controlar o risco e bloquear os lucros.
Retrospectiva e otimização de parâmetros: retrospectiva em larga escala da estratégia, usando métodos como algoritmos genéticos para otimizar parâmetros de probabilidade de conversão.
Considere os custos de transação: inclua os custos de transação na lógica da estratégia para evitar transações excessivamente frequentes.
A estratégia de negociação quantitativa de estado de conversão de probabilidade da cadeia de Markov é um método de negociação inovador que combina habilmente modelos de probabilidade com a análise técnica tradicional. Ao simular o processo de conversão de estado de mercado, a estratégia é capaz de capturar tendências de mercado, além de considerar a aleatoriedade e a incerteza do mercado.
Embora a estratégia tenha riscos como sensibilidade de parâmetros e possível simplificação excessiva, sua flexibilidade e interpretabilidade tornam-na uma ferramenta de negociação potencial. Com a introdução de mais otimizações, como a introdução de mais estados, probabilidade de ajuste dinâmico e integração de outros indicadores técnicos, a estratégia tem chances de obter um melhor desempenho em negociações reais.
Para os comerciantes, esta estratégia oferece uma nova forma de pensar sobre como usar modelos de probabilidade para entender e prever o comportamento do mercado. No entanto, na prática, ainda é necessário um tratamento cauteloso, uma avaliação de feedback e risco adequados e o ajuste adequado de acordo com a variedade de negociação específica e o ambiente do mercado.
//@version=5
strategy("Markov Chain Strategy", overlay=true)
// Input parameters for transition probabilities
prob_bull_to_bull = input.float(0.7, title="Bull to Bull Transition Probability")
prob_bull_to_bear = input.float(0.2, title="Bull to Bear Transition Probability")
prob_bull_to_stagnant = input.float(0.1, title="Bull to Stagnant Transition Probability")
prob_bear_to_bull = input.float(0.3, title="Bear to Bull Transition Probability")
prob_bear_to_bear = input.float(0.5, title="Bear to Bear Transition Probability")
prob_bear_to_stagnant = input.float(0.2, title="Bear to Stagnant Transition Probability")
prob_stagnant_to_bull = input.float(0.4, title="Stagnant to Bull Transition Probability")
prob_stagnant_to_bear = input.float(0.3, title="Stagnant to Bear Transition Probability")
prob_stagnant_to_stagnant = input.float(0.3, title="Stagnant to Stagnant Transition Probability")
// Define price states
var float prev_close = na
var int state = na
// Calculate the current state
if (not na(prev_close))
if (close > prev_close)
state := 2 // Bull
else if (close < prev_close)
state := 1 // Bear
else
state := 3 // Stagnant
prev_close := close
// Transition logic (simplified)
var float transition_counter = 0
transition_counter := (transition_counter + 1) % 10
if (state == 2) // Bull
if (transition_counter < prob_bull_to_bull * 10)
state := 2
else if (transition_counter < (prob_bull_to_bull + prob_bull_to_bear) * 10)
state := 1
else
state := 3
else if (state == 1) // Bear
if (transition_counter < prob_bear_to_bull * 10)
state := 2
else if (transition_counter < (prob_bear_to_bull + prob_bear_to_bear) * 10)
state := 1
else
state := 3
else if (state == 3) // Stagnant
if (transition_counter < prob_stagnant_to_bull * 10)
state := 2
else if (transition_counter < (prob_stagnant_to_bull + prob_stagnant_to_bear) * 10)
state := 1
else
state := 3
// Strategy logic
if (state == 2)
strategy.entry("Buy", strategy.long)
else if (state == 1)
strategy.entry("Sell", strategy.short)
else
strategy.close("Buy")
strategy.close("Sell")