
Esta estratégia é uma estratégia de negociação de Bitcoin no horário de negociação de Londres, com base nos indicadores técnicos MACD e RSI. Ela abriu uma posição apenas no horário de negociação de Londres, usando o MACD para determinar a direção da tendência para entrar no mercado e usando o RSI para determinar o excesso de compra e venda fora do mercado.
O horário de Londres é muito ativo no mercado de divisas, e a maioria das instituições participa. Esta estratégia define o horário de Londres entre as 7h e as 4h, e só abre posições durante esse horário.
O MACD geralmente pode determinar a direção da tendência. Quando a linha rápida atravessa a linha lenta, é um garfo de ouro, indicando que a tendência de alta está chegando, faça mais; Quando a linha rápida atravessa a linha lenta abaixo da linha rápida, é um garfo de morte, indicando que a tendência de queda está chegando, faça um vazio. Esta estratégia é usar este princípio para determinar a direção da tendência.
O RSI pode determinar se o mercado está sobrecomprado ou sobrevendido. Quando o RSI é maior do que 70, ele está sobrecomprado, e quando o RSI é menor do que 30, ele está sobrevendido. A estratégia é usar esse princípio para definir o ponto de saída de stop loss.
A maior vantagem desta estratégia é que combina negociação de tendências e negociação de ritmo de sobrecompra e sobrevenda. Quando a tendência não é visível, ela pode usar o MACD para determinar a tendência possível; e usar o RSI para controlar o risco, evitando assim seguir cegamente as quedas sem uma tendência clara. Além disso, a estratégia abriu posições apenas durante o período de negociação de Londres, dominado pela instituição, o que reduz o impacto das flutuações irracionais de preços na estratégia.
O principal risco desta estratégia é que o MACD, como um indicador técnico de liquidação do mercado, não funciona muito bem sob uma tendência clara. Se houver uma tendência unilateral de longo prazo, os sinais do MACD podem falhar com frequência. Além disso, o RSI também pode falhar em situações de alta ou baixa posição. Para reduzir esses riscos, podemos ajustar adequadamente os parâmetros ou adicionar outras condições de onda para garantir que as posições sejam feitas apenas em sinais de alta probabilidade.
A estratégia pode ser melhorada em alguns aspectos:
Adicionar filtros de outros indicadores técnicos, como linhas de Brin, KDJ, etc., para evitar falsas brechas.
Aumentar as estratégias de stop-loss, como o stop-loss móvel ou o stop-stop de salto de preço, para bloquear mais lucros.
Parâmetros de otimização, ajustando os parâmetros do MACD e do RSI para diferentes tipos de cenários.
A adição de elementos de aprendizagem de máquina, usando modelos de aprendizagem profunda como lstm para determinar estratégias de tendências.
Esta estratégia é, em geral, uma estratégia de negociação de Bitcoin confiável durante o horário de negociação de Londres. Combina tendências e ritmo, garantindo uma maior probabilidade de lucro, enquanto filtra de forma eficaz os sinais de inefficacidade. A estratégia pode aumentar ainda mais a estabilidade e a rentabilidade através da otimização contínua dos parâmetros e do acréscimo de outros indicadores técnicos.
/*backtest
start: 2023-11-19 00:00:00
end: 2023-11-22 08:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("London MACD RSI Strategy -1H BTC", overlay=true)
// Define London session times
london_session_start_hour = input(6, title="London Session Start Hour")
london_session_start_minute = input(59, title="London Session Start Minute")
london_session_end_hour = input(15, title="London Session End Hour")
london_session_end_minute = input(59, title="London Session End Minute")
// Define MACD settings
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalSMA = input(9, title="Signal SMA")
// RSI settings
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(65, title="RSI Overbought")
rsiOversold = input(35, title="RSI Oversold")
// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSMA)
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Convert input values to timestamps
london_session_start_timestamp = timestamp(year, month, dayofmonth, london_session_start_hour, london_session_start_minute)
london_session_end_timestamp = timestamp(year, month, dayofmonth, london_session_end_hour, london_session_end_minute)
// Filter for London session
in_london_session = time >= london_session_start_timestamp and time <= london_session_end_timestamp
// Long and Short Conditions
longCondition = ta.crossover(macdLine, signalLine) and rsi < rsiOversold and in_london_session
shortCondition = ta.crossunder(macdLine, signalLine) and rsi > rsiOverbought and in_london_session
// Strategy entries and exits
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)