Estratégia dinâmica de acompanhamento do preço médio

Autora:ChaoZhang, Data: 2024-01-29 15:28:53
Tags:

img

Resumo

A ideia principal desta estratégia é que, quando o preço das ações cai para uma certa porcentagem, as posições podem ser gradualmente aumentadas para reduzir o custo médio da posição de detenção.

Princípio da estratégia

Quando o preço da ação cruza pela primeira vez acima da média móvel simples de 20 dias, vá longo para abrir uma posição. Se a ação cair pela porcentagem de perda alvo definida, como 10%, adicione à posição em uma porcentagem especificada, como 50% da posição atual. Isso reduz o custo médio da posição de detenção. Quando o preço da ação atinge o ponto de lucro definido, como 10% acima do custo médio de detenção, feche todas as posições para obter lucro.

Especificamente, a função de estratégia define parâmetros como permitir até 4 compras adicionais, com o tamanho da posição definido como uma porcentagem do capital e o tamanho da posição inicial em 10% do capital. Ele obtém a linha da média móvel simples de 20 dias. Quando o preço de fechamento cruza acima dessa média e não há posição atual, ele abre uma posição longa. Ele então calcula a porcentagem flutuante de lucro / perda da posição. Se atingir a porcentagem de perda alvo, ele continua piramidando na porcentagem de compra adicional alvo até que a ação se recupere para atingir a meta de lucro.

Análise das vantagens

A maior vantagem deste tipo de estratégia é que, quando as condições de mercado são desfavoráveis, o custo médio da posição de detenção pode ser reduzido através de compras adicionais piramidizadas. Isso permite obter maiores lucros quando as condições de mercado melhoram, alcançando o efeito "perder menos, ganhar mais".

Ao mesmo tempo, a estratégia permite múltiplas compras adicionais, aproveitando ao máximo as diferenças de tempo nas reversões do mercado para ajustar gradualmente as posições.

Análise de riscos

Por outro lado, a Comissão considera que o mercado de capitais não pode ser considerado como um mercado de capitais, uma vez que o mercado de capitais não pode ser considerado como um mercado de capitais, mas como um mercado de capitais.

Ao mesmo tempo, devemos perceber que, se todos os investidores adotarem tal estratégia, quando muitos investidores atingirem sua meta de porcentagem de perda, poderá haver um cenário de adição coletiva às posições. Isso impulsionaria os preços e formaria uma recuperação irracional a curto prazo. Se não avaliarmos a situação adequadamente, poderemos julgar erroneamente a tendência do mercado e continuar a aumentar nossa posição. O resultado seria perdas ainda maiores quando os preços despencarem novamente.

Orientações de otimização

Há várias formas de otimizar esta estratégia:

  1. Ajustar dinamicamente a percentagem de compra adicional, que pode ser ajustada em tempo real com base nas condições do mercado.

  2. Incorporar indicadores quantitativos, por exemplo, monitorar os aumentos de volume para confirmar sinais de reversão e evitar sinais falsos.

  3. Após compras adicionais, use um sistema de stop loss progressivo para garantir que as perdas sejam mantidas dentro de um certo intervalo.

Resumo

A estratégia de rastreamento de preços médio dinâmico faz uso do efeito de preço médio ajustando posições através de compras adicionais. Dentro da premissa de ter suporte de capital suficiente, ele pode efetivamente capturar retornos acima da média quando os preços revertem. A chave é julgar adequadamente o tempo e as proporções para manter os riscos dentro de intervalos aceitáveis. Se aplicado adequadamente, isso pode ser um método muito eficaz na negociação quantitativa.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3

// ########################################################################## // 
//
// This scipt is intended to demonstrate how pyramiding can be used to average
// down a position.
//
// We will buy when a stock closes above its 20 day MA and Average down if
// the trade does not go in our favor. We will hold until a profit is made. 
// (which could mean we hold forever)
//
// ########################################################################## //

strategy("Average Down", overlay=true )

// Date Ranges
from_month = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
from_day   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
from_year  = input(defval = 2010, title = "From Year")
to_month   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
to_day     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
to_year    = input(defval = 9999, title = "To Year")
start  = timestamp(from_year, from_month, from_day, 00, 00)  // backtest start window
finish = timestamp(to_year, to_month, to_day, 23, 59)        // backtest finish window
window = true
// Strategy Inputs
target_perc = input(-10, title='Target Loss to Average Down (%)', maxval=0)/100
take_profit = input(10, title='Target Take Profit', minval=0)/100
target_qty  = input(50, title='% Of Current Holdings to Buy', minval=0)/100 
sma_period  = input(20, title='SMA Period') 

// Get our SMA, this will be used for our first entry 
ma = sma(close,sma_period)

// Calculate our key levels
pnl = (close - strategy.position_avg_price) / strategy.position_avg_price
take_profit_level = strategy.position_avg_price * (1 + take_profit)

// First Position
first_long = crossover(close, ma) and strategy.position_size == 0 and window
if (first_long)
    strategy.entry("Long", strategy.long)

// Average Down!
if (pnl <= target_perc)
    qty = floor(strategy.position_size * target_qty)
    strategy.entry("Long", strategy.long, qty=qty)

// Take Profit!
strategy.exit("Take Profit", "Long", limit=take_profit_level)

// Plotting
plot(ma, color=blue, linewidth=2, title='SMA')
plot(strategy.position_avg_price, style=linebr, color=red, title='Average Price')

Mais.