O recurso está a ser carregado... Carregamento...

Sistema de Análise de Estratégia de Anomalia Multidimensional Gold Friday

Autora:ChaoZhang, Data: 2024-12-12 16:32:12
Tags:MARSIROCSLTPMACDEMARISCOPNLATR

img

Resumo

Esta estratégia é um sistema de negociação baseado em anomalias de mercado, principalmente utilizando características de comportamento do mercado entre o fechamento na quinta-feira à noite e o fechamento na sexta-feira.

Princípios de estratégia

A lógica central da estratégia baseia-se em vários elementos-chave:

  1. Condição de entrada: inserir posições longas no fechamento de quinta-feira, com base na análise de dados históricos.
  2. Condição de saída: fechar posições no fechamento de sexta-feira, com períodos de retenção fixos.
  3. Gerenciamento de dinheiro: usa 10% do capital da conta por negociação, este dimensionamento de posição conservador ajuda a controlar o risco.
  4. Execução de operações: As ordens são executadas a preços de fechamento, evitando impactos da volatilidade intradiária.

Vantagens da estratégia

  1. Simples e claras: As regras de negociação são simples, sem combinações complexas de indicadores, fáceis de compreender e executar.
  2. Risco controlado: os períodos de detenção fixos e os planos de gestão de fundos facilitam a avaliação e o controlo do risco.
  3. Alta automação: lógica de estratégia simples adequada para a implementação de negociação automatizada.
  4. Alta flexibilidade: os parâmetros podem ser ajustados para diferentes ambientes de mercado, demonstrando uma boa adaptabilidade.

Riscos estratégicos

  1. Dependência do tempo: A estratégia depende fortemente de janelas de tempo específicas, podendo ser afetada por notícias importantes durante as horas não comerciais.
  2. Alterações do ambiente de mercado: os padrões estatísticos históricos podem tornar-se inválidos no futuro, exigindo um acompanhamento contínuo do desempenho da estratégia.
  3. Risco de execução: a liquidez pode ser insuficiente durante os períodos de encerramento, o que pode conduzir a um aumento do deslizamento. Sugestões de gestão de riscos:
  • Estabelecer níveis de stop loss e take profit
  • Ajustar dinamicamente os períodos de retenção
  • Adicionar condições de filtragem

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

  1. Incorporar indicadores de volatilidade: adicionar um indicador ATR para dimensionamento dinâmico das posições, tornando a estratégia mais adaptável.
  2. Otimizar o calendário de entrada: combinar padrões de preços e indicadores técnicos para melhorar a precisão da entrada.
  3. Melhorar o controle de riscos: adicionar mecanismos dinâmicos de stop-loss para proteger os lucros existentes.
  4. Adicionar condições de filtragem: considerar a adição de filtros de tendência para evitar a negociação em condições desfavoráveis de mercado.

Resumo

Esta estratégia é um sistema de negociação clássico baseado em anomalias do mercado, buscando retornos potenciais através de uma gestão estrita do tempo e uma gestão conservadora do dinheiro.


/*backtest
start: 2024-11-11 00:00:00
end: 2024-12-10 08:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © piirsalu

//@version=5
strategy("Gold Friday Anomaly Strategy", 
     default_qty_type=strategy.percent_of_equity,
     slippage = 1, commission_value=0.0005,
     process_orders_on_close = true,
     initial_capital = 50000,
     default_qty_value=500,
     overlay = true)
     

/////////////////////////////////////////////////////////////////////////////////////
//                                 . USER INPUTS .                                 //
/////////////////////////////////////////////////////////////////////////////////////

// Define backtest start and end dates
st_yr_inp = input(defval=2000, title='Backtest Start Year')
st_mn_inp = input(defval=01, title='Backtest Start Month')
st_dy_inp = input(defval=01, title='Backtest Start Day')
en_yr_inp = input(defval=2025, title='Backtest End Year')
en_mn_inp = input(defval=01, title='Backtest End Month')
en_dy_inp = input(defval=01, title='Backtest End Day')

// Set start and end timestamps for backtesting
start = timestamp(st_yr_inp, st_mn_inp, st_dy_inp, 00, 00)
end = timestamp(en_yr_inp, en_mn_inp, en_dy_inp, 00, 00)

/////////////////////////////////////////////////////////////////////////////////////
//                              . STRATEGY LOGIC .                                 //
/////////////////////////////////////////////////////////////////////////////////////

// Check if the current day is Friday
isFriday = (dayofweek == dayofweek.friday)

// Initialize a candle counter
var int barCounter = 0

// Increment the candle counter on each new bar
barCounter := barCounter + 1

// Define trading session time ranges
pre_mkt = time(timeframe.period, '0400-0800:23456')
mkt_hrs = time(timeframe.period, '0800-1600:23456')
eod = time(timeframe.period, '1200-1600:23456')

/////////////////////////////////////////////////////////////////////////////////////
//                          . STRATEGY ENTRY & EXIT .                              //
/////////////////////////////////////////////////////////////////////////////////////

// Enter a long position on the first candle of Friday within the backtest period
if dayofweek == 4 and time >= start and time <= end
    strategy.entry("BuyOnFriday", strategy.long)

// Close the position after holding it for 4 candles
if (barCounter % 1 == 0)
    strategy.close("BuyOnFriday")



Relacionados

Mais.