Impulso e estratégia de negociação de volume

Autora:ChaoZhang, Data: 2023-12-19 15:37:16
Tags:

img

Resumo

Esta estratégia faz decisões de compra e venda com base no indicador de impulso e no indicador de volume de negociação de ações. Ela compra quando o impulso ascendente dos preços das ações acelera e o volume de negociação aumenta, e vende quando o impulso descendente acelera e o volume de negociação aumenta. A estratégia capta o impulso de preços de curto prazo trazido pelo comportamento do rebanho do mercado.

Princípio da estratégia

A força e a duração das tendências de mudança de preços das ações determinam o impulso. Esta estratégia calcula a mudança dos dias anteriores perto do impulso do preço do juiz. O impulso é positivo quando os preços aumentam consecutivamente e negativo quando os preços caem consecutivamente. A estratégia também combina o indicador de volume de negociação.

Especificamente, a condição de compra é um cruzamento do indicador de momentum acima de 0, com volume de negociação mais de 2 vezes a média de 20 dias. A condição de venda é o oposto. Após a compra, a meta de lucro é definida em 0,8 vezes o preço de entrada e o stop loss é 0,5 vezes. A meta de lucro e o stop loss após a venda são revertidos em conformidade.

Vantagens

A maior vantagem é capturar tendências de mercado de curto prazo e comportamento de rebanho. Quando os preços das ações mostram aumentos ou quedas sustentados, muitos investidores varejistas e institucionais seguirão o impulso de preço mais forte para negociar. Isso cria uma tendência de preços de curto prazo auto-reforçada. A estratégia gera retornos excessivos alavancando tal psicologia de mercado.

Riscos

Em primeiro lugar, as flutuações de preços a curto prazo são imprevisíveis. Existem riscos de reversões acentuadas devido a eventos repentinos, que não podem ser totalmente evitados apesar das perdas de parada. Em segundo lugar, a qualidade dos dados dos volumes de negociação varia. A possibilidade de manipulação não pode ser totalmente descartada, o que distorce os sinais comerciais. Em terceiro lugar, a simples análise de preço e volume não pode controlar com precisão as tendências a curto prazo. Grandes mudanças estruturais no mercado podem afetar o desempenho da estratégia.

Reforço

A estratégia pode ser melhorada através da incorporação de mais fontes de dados. Por exemplo, o volume de discussões de ações relacionadas em plataformas de mídia social pode indicar movimentos futuros de preços. Estes dados podem fornecer sinais de entrada e saída suplementares. Indicadores fundamentais como a taxa de P / E e a taxa de P / B também podem ajudar a verificar a sustentabilidade da mudança de preço e reduzir os negócios errados.

Conclusão

Ao capturar mudanças integradas no impulso dos preços e no volume de negociação, esta estratégia julga as tendências de curto prazo e o comportamento do rebanho. Tais grandes dados e estratégias quantitativas baseadas em finanças comportamentais podem produzir retornos esperados mais altos do que as estratégias tradicionais. Mas os riscos precisam de reconhecimento e prevenção.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Momentum and Volume Bot', overlay=true)

// Define strategy parameters
profit_target_percent = input(0.8, title='Profit Target (%)')
stop_loss_percent = input(0.5, title='Stop Loss (%)')
volume_threshold = input(2, title='Volume Threshold')

// Calculate momentum
momentum = close - close[1]

// Calculate average volume
avg_volume = ta.sma(volume, 20)

// Buy condition
buy_condition = ta.crossover(momentum, 0) and volume > avg_volume * volume_threshold

// Sell condition
sell_condition = ta.crossunder(momentum, 0) and volume > avg_volume * volume_threshold

// Strategy logic
strategy.entry('Buy', strategy.long, when=buy_condition)
strategy.entry('Sell', strategy.short, when=sell_condition)

// Set profit target and stop loss
strategy.exit('Take Profit/Stop Loss', from_entry='Buy', profit=close * profit_target_percent / 100, loss=close * stop_loss_percent / 100)
strategy.exit('Take Profit/Stop Loss', from_entry='Sell', profit=close * profit_target_percent / 100, loss=close * stop_loss_percent / 100)

// Plotting
plotshape(series=buy_condition, title='Buy Signal', color=color.new(color.green, 0), style=shape.triangleup, size=size.small)
plotshape(series=sell_condition, title='Sell Signal', color=color.new(color.red, 0), style=shape.triangledown, size=size.small)



Mais.