这是一个只使用两个简单移动平均线(SMA)的交易策略。该策略使用慢速SMA线定义趋势方向,使用快速SMA线确定具体入市点。该策略适用于小时级别及以上周期的加密货币交易。
该策略通过计算快速SMA线和慢速SMA线来判断趋势方向。具体来说:
慢速SMA线(蓝色)用于定义趋势方向。当价格低于慢速SMA时,定义为下降趋势;当价格高于慢速SMA时,定义为上升趋势。
快速SMA线(红色)用于确定具体的入市时机。在上升趋势下,当K线收盘价低于开盘价,且低于快速SMA时,做多;在下降趋势下,当K线收盘价高于开盘价,且高于快速SMA时,做空。
该策略同时考虑K线实体颜色,只在该策略定义的趋势方向时才入场。即在上升趋势下看多单信号,在下降趋势下看空单信号,从而避免逆势交易。
针对上述风险,可以从以下方面进行优化:
结合MACD等指标验证趋势判断。
加入止损策略控制风险。
增加参数优化模块,实现参数自适应。
增加进场确认指标,避免多余入场。
该策略主要可从以下几个方面进行优化:
参数优化。可以加入参数优化模块,根据不同市场环境自动调整SMA参数,实现参数自适应。
进场确认。可以加入MACD、布林带等指标,对SMA趋势进行多方验证,避免错误信号。
止损策略。可以设置移动止损、时间止损等策略,在入场后及时止损,控制风险。
回撤控制。可以设置最大回撤比例,当达到回撤比例时关闭所有仓位,避免亏损扩大。
跨时间周期验证。可以引入更高时间周期指标,验证较低周期SMA信号的可靠性。
增加做多做空选择。可以增加开关选择只做多或只做空,适应不同市场情况。
该策略整体思路清晰易懂,使用简单常用指标判断趋势,可靠性较高。但存在一定盈利空间有限、风险控制不足等问题。下一步可从参数优化、风险控制等方面进行策略优化,使策略参数更符合市场环境,并能够有效控制交易风险,进一步提高策略优势。
/*backtest
start: 2023-08-22 00:00:00
end: 2023-09-21 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("Noro's Trend SMA Strategy v1.1", shorttitle = "Trend SMA str 1.1", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)
fastlen = input(5, "fast SMA Period")
slowlen = input(15, "slow SMA Period")
only = input(false, "Only long?")
fastsma = ema(close, fastlen)
slowsma = ema(close, slowlen)
trend = low > slowsma ? 1 : high < slowsma ? -1 : trend[1]
up = trend == 1 and low < fastsma and close < open ? 1 : 0
dn = trend == -1 and high > fastsma and close > open ? 1 : 0
plot(fastsma, color = red, title = "Fast SMA")
plot(slowsma, color = blue, title = "Slow SMA")
longCondition = up == 1
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = dn == 1
if (shortCondition)
strategy.entry("Short", strategy.short, only == true ? 0 : na)