三重移动平均线交叉系统是一种典型的跟踪趋势的股票交易策略。它利用三条不同时间长度的移动平均线的交叉作为买入和卖出信号。当短期移动平均线上穿中期移动平均线,并且中期移动平均线上穿长期移动平均线时产生买入信号;当短期移动平均线下穿中期移动平均线,并且中期移动平均线下穿长期移动平均线时产生卖出信号。
该策略基于三条移动平均线:长线期移动平均线ma1、中期移动平均线ma2和短期移动平均线ma3。首先计算这三条线:
length1 = input(18,'长线')
length2 = input(9,'中线')
length3 = input(4,'短线')
ma1 := sma(close,length1)
ma2 := sma(close,length2)
ma3 := sma(close,length3)
其中,length1、length2和length3分别定义三条移动平均线的时间长度。sma函数计算close价格在对应长度上的简单移动平均值。
然后使用三条移动平均线的交叉判断买入和卖出时机:
if ma2 > ma1 and ma3 > ma3[1]
strategy.entry("Long", strategy.long)
if ma2 < ma1 and ma3 < ma3[1]
strategy.entry("Short", strategy.short)
当中期线ma2上穿长期线ma1,并且短期线ma3上穿前一周期的ma3时,发出做多信号。当中期线ma2下穿长期线ma1,并且短期线ma3下穿前一周期的ma3时,发出做空信号。
可以通过适当优化参数、结合其他指标作为过滤条件来减少这些风险。
三重移动平均线交叉策略属于简单实用的趋势跟踪策略。它根据三条移动平均线的交叉判断行情趋势的变化,以产生交易信号。该策略优点是规则简单,可以有效跟踪趋势,适合中长线操作。但也存在一定的假信号风险和回撤风险。可以通过参数优化、加入辅助指标等方法进行改进,以适应不同市场环境。总体来说,三重移动平均线交叉策略是量化交易的一个基础入门策略,对于学习算法交易是一个很好的开始。
/*backtest
start: 2023-08-28 00:00:00
end: 2023-09-27 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dongyun
//@version=4
strategy("三重交叉修正模式系统", overlay=true)
//strategy.risk.allow_entry_in(strategy.direction.long)
length1 = input(18,'长线')
length2 = input(9,'中线')
length3 = input(4,'短线')
ma1 =0.0
ma2 = 0.0
ma3 = 0.0
ma1 := sma(close,length1)
ma2 := sma(close,length2)
ma3 := sma(close,length3)
plot(ma1)
plot(ma2)
plot(ma3)
if ma2 > ma1 and ma3 > ma3[1]
strategy.entry("Long", strategy.long, when=strategy.position_size <= 0)
if ma2 < ma1 and ma3 < ma3[1]
strategy.entry("Short", strategy.short, when=strategy.position_size > 0)