Esta estratégia é baseada no princípio de duplo equilíbrio. Faça mais quando a média de curto prazo atravessa a média de longo prazo; e leve quando a média de curto prazo atravessa a média de longo prazo. A estratégia é simples e fácil de entender e é adequada para aprendizagem de novatos.
A estratégia baseia-se principalmente em dois indicadores de linha média: sma (close, 14) e sma (close, 28).
Definição da média curta e média:
short_ma = sma(close, 14)
long_ma = sma(close, 28)
A partir daí, os jogadores são julgados por um jogo de sorteio:
longCondition = crossover(short_ma, long_ma)
shortCondition = crossunder(short_ma, long_ma)
Quando você usa a linha média de curto prazo, faça mais:
strategy.entry("Buy", strategy.long, when = longCondition)
Quando a linha média de curto prazo atravessa a linha média de longo prazo:
strategy.close_all(when = shortCondition)
O princípio da estratégia é simples e claro, usando um forquilho de ouro de duas linhas para julgar, com uma certa capacidade de acompanhamento de tendências.
A estratégia pode ser melhorada em vários aspectos:
Pode-se experimentar diferentes períodos de média curta e longa para encontrar a melhor combinação. Por exemplo, teste de comparação de parâmetros como (5, 10), (10, 20) e (20, 60).
Pode-se aumentar o volume de negociação, a diferença de preço e outros filtros quando a linha de equilíbrio se cruza, evitando o excesso de negociação em mercados turbulentos.
O controle de perdas individuais pode ser feito através da configuração de um ponto de parada ou da utilização de uma linha média como linha de parada.
Os indicadores auxiliares MACD, KDJ e outros podem ser usados para o comércio de combinações, aumentando a eficácia da estratégia.
Procure por melhores pontos de entrada perto da linha média, em vez de estabelecer posições perto da linha média. Por exemplo, entre em pontos de entrada que estão afastados da linha média.
A estratégia de dupla linha de equilíbrio é um conceito simples e fácil de usar para os novatos. Mas a estratégia é sensível às turbulências do mercado e existe um certo risco de perda. Podemos aumentar a eficácia da estratégia por meio de parâmetros de otimização, aumento de condições de filtragem, configuração de stop loss e adição de outros indicadores.
||
This strategy is designed based on the golden cross and death cross of dual moving averages. It goes long when the short period moving average crosses above the long period moving average, and closes position when the short period moving average crosses below the long period moving average. The strategy is simple and easy to understand, suitable for beginners to learn.
The strategy is mainly based on the sma(close, 14) and sma(close, 28) indicators.
First define the short and long moving averages:
short_ma = sma(close, 14)
long_ma = sma(close, 28)
Then determine entry and exit based on golden cross and death cross:
longCondition = crossover(short_ma, long_ma)
shortCondition = crossunder(short_ma, long_ma)
Go long when the short MA crosses above the long MA:
strategy.entry("Buy", strategy.long, when = longCondition)
Close position when the short MA crosses below the long MA:
strategy.close_all(when = shortCondition)
The logic is simple and clear, utilizing the crossovers of dual MAs to determine entries and exits. It has some trend following capacity.
The strategy can be optimized in the following aspects:
Test different short and long MA periods, such as (5, 10), (10, 20), (20, 60) etc to find the optimal combination.
Add filters like trading volume, price gap etc. near MA crossovers to avoid excessive trades in ranging markets.
Set stop loss price or use MA as stop loss line to control single trade loss.
Add auxiliary indicators like MACD, KDJ etc. to improve strategy performance.
Find better entry points near MAs instead of entering right at the crossover. For example, enter on MA divergence points.
The dual MA strategy is simple for beginners to use. But it is sensitive to market fluctuations and has risks of losses. We can improve it by optimizing parameters, adding filters, incorporating stop loss, combining other indicators etc. It can perform well in strong trends but should be used with caution or proper stop loss in ranging markets.
[/trans]
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=2
// strategy("Tester", pyramiding = 50, default_qty_type = strategy.cash, default_qty_value = 20, initial_capital = 2000, commission_type = strategy.commission.percent, commission_value = 0.25)
minGainPercent = input(0.6)
gainMultiplier = minGainPercent * 0.01 + 1
longCondition = crossover(sma(close, 14), sma(close, 28))
shortCondition = crossunder(sma(close, 14), sma(close, 28))
avg_protection = input(1)
gain_protection = input(1)
strategy.entry("Buy", strategy.long, when = longCondition and (avg_protection >= 1 ? (na(strategy.position_avg_price) ? true : close <= strategy.position_avg_price) : true))
strategy.close_all(when = shortCondition and (gain_protection >=1 ? (close >= gainMultiplier * strategy.position_avg_price) : true))