KRK ADA 1H Estratégia estocástica lenta com mais entradas e IA

Autora:ChaoZhang, Data: 2024-04-12 16:26:06
Tags:EMARSITPSLA.I.RNN

img

Resumo

Esta estratégia é uma estratégia de negociação baseada no oscilador lento estocástico, combinada com a média móvel, índice de força relativa (RSI) e técnicas de inteligência artificial (AI). A estratégia determina os sinais de compra e venda analisando os sinais de cruzamento do oscilador lento estocástico, considerando a posição do preço em relação à média móvel de 200 dias e incorporando sinais gerados por um modelo de IA. A estratégia também define níveis de take-profit e stop-loss para gerenciar o risco.

Princípios de estratégia

  1. Calcular o oscilador lento estocástico com um período de 30, onde o período de suavização para o valor K é 18 e o período de suavização para o valor D é 7.
  2. Determinar os limiares de sobrecompra e de sobrevenda como 40 e 19, respectivamente, e definir o valor mínimo de K como 12.
  3. Calcule a média móvel simples de 200 dias como um filtro de tendência.
  4. Usar um modelo de rede neural recorrente (RNN) para gerar sinais de compra e venda.
  5. Condição de entrada longa: o preço cruza acima da média móvel de 200 dias, o valor K está abaixo do limiar de sobrevenda e acima do valor mínimo de K e o sinal AI é 1.
  6. Condição de entrada curta: O preço cruza abaixo da média móvel de 200 dias, o valor K está acima do limiar de sobrecompra e acima do valor mínimo de K e o sinal AI é -1.
  7. Os sinais de compra e venda também são gerados quando o Oscilador Estocástico mostra um crossover e atende às condições de sobrecompra ou sobrevenda.
  8. Fixar o nível de take-profit em 500 pontos acima ou abaixo do preço corrente e o nível de stop-loss em 200 pontos acima ou abaixo do preço corrente.

Vantagens da estratégia

  1. Combina múltiplos indicadores técnicos e técnicas de IA, melhorando a robustez e a adaptabilidade da estratégia.
  2. Utiliza o oscilador lento estocástico como o principal sinal de compra e venda, capturando efetivamente as condições de mercado de sobrecompra e sobrevenda.
  3. Introduz a média móvel de 200 dias como um filtro de tendência para evitar a negociação contra a tendência.
  4. Emprega um modelo de IA para gerar sinais de compra e venda, melhorando a inteligência da estratégia.
  5. Estabelece níveis claros de take-profit e stop-loss para gerir eficazmente o risco.

Riscos estratégicos

  1. O oscilador estocástico pode gerar sinais falsos em determinadas condições de mercado.
  2. A eficácia do modelo de IA depende da qualidade dos dados de formação e do desenho do modelo, introduzindo incerteza.
  3. Os níveis fixos de take profit e stop loss podem não se adaptar bem às diferentes condições de volatilidade do mercado.
  4. A estratégia carece de um mecanismo para responder a eventos repentinos do mercado e flutuações anormais.

Orientações para a otimização da estratégia

  1. Otimizar os parâmetros do oscilador estocástico, tais como ajustar os períodos de suavização dos valores K e D, para melhorar a eficácia do indicador.
  2. Melhorar a concepção do modelo de IA, incorporando mais características e dados de mercado para melhorar a sua precisão preditiva.
  3. Implementar um mecanismo dinâmico de captação de lucros e stop-loss que se adapte à volatilidade do mercado e aos níveis de risco.
  4. Introduzir análises do sentimento do mercado e fatores orientados por eventos para melhorar a capacidade da estratégia de responder a eventos repentinos do mercado.
  5. Considerar a adição de módulos de dimensionamento de posições e gestão de fundos para otimizar a eficiência da utilização do capital e o controlo do risco da estratégia.

Resumo

Esta estratégia combina o oscilador lento estocástico, a média móvel, o índice de força relativa e as técnicas de IA para construir uma estratégia de negociação multifator. A estratégia utiliza o oscilador estocástico para capturar sinais de sobrecompra e sobrevenda, enquanto usa um filtro de tendência e geração de sinal inteligente para melhorar sua robustez e adaptabilidade. Embora a estratégia tenha certos riscos, como falha de indicadores e incerteza do modelo, eles podem ser mitigados por otimização de parâmetros de indicadores, aprimoramento do modelo de IA, implementação de medidas dinâmicas de controle de risco e incorporação de módulos adicionais para dimensionamento de posição e gerenciamento de dinheiro.


/*backtest
start: 2024-03-12 00:00:00
end: 2024-04-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Stochastic Slow Strategy with More Entries and AI", overlay=true)

length = input.int(30, minval=1)
OverBought = input(40)
OverSold = input(19)
smoothK = input.int(18, minval=1)
smoothD = input.int(7, minval=1)
minKValue = input(12, title="Minimum K Value")

// Stochastic calculations
k = ta.sma(ta.stoch(close, high, low, length), smoothK)
d = ta.sma(k, smoothD)
co = ta.crossover(k, d)
cu = ta.crossunder(k, d)

// Trend filter (200-period simple moving average)
ema200 = ta.sma(close, 200)

// Define la función para calcular la señal de la red neuronal recurrente
rnn_signal(price_series) =>
    // Aquí implementa tu modelo de red neuronal recurrente para generar la señal
    // Puedes usar bibliotecas externas o implementar tu propio modelo aquí

    // Ejemplo de señal aleatoria
    signal = ta.rsi(price_series, 14) > 50 ? 1 : -1
    
    // Devuelve la señal generada por la red neuronal recurrente
    signal

// Calcula la señal utilizando la función definida anteriormente
ai_signal = rnn_signal(close)

// Entry conditions
longCondition = ta.crossover(close, ema200) and k < OverSold and k > minKValue and ai_signal == 1
shortCondition = ta.crossunder(close, ema200) and k > OverBought and k > minKValue and ai_signal == -1

if (not na(k) and not na(d))
    if (co and k < OverSold and k > minKValue)
        strategy.entry("LONG", strategy.long, comment="LONG")
        strategy.exit("ExitLong", "LONG", profit = close * 500, loss = close * 200)
    if (cu and k > OverBought and k > minKValue)
        strategy.entry("SHORT", strategy.short, comment="SHORT")
        strategy.exit("ExitShort", "SHORT", profit = close * 500, loss = close * 200)
    
if (longCondition)
    strategy.entry("LongEntry", strategy.long, comment="LongEntry")
    strategy.exit("ExitLongEntry", "LongEntry", profit = close * 500, loss = close * 200)
if (shortCondition)
    strategy.entry("ShortEntry", strategy.short, comment="ShortEntry")
    strategy.exit("ExitShortEntry", "ShortEntry", profit = close * 500, loss = close * 200)

// Plotting
plot(ema200, color=color.blue, title="200 SMA")

Relacionados

Mais.