简单的双均线策略代码
发布时间:2023-5-7 18:13阅读:666
/*仅用于想入门量化交易的同学了解量化的基本逻辑与步骤,请不要用于实盘,用于实盘盈亏自负*/
Params
Numeric FastLength(5);// 短期指数平均线参数
Numeric SlowLength(20);// 长期指数平均线参数
Vars
/*设置变量*/
Series
Series
Events
OnBar(ArrayRef
{
MA_fast = AverageFC(Close,FastLength);//求出短均线值
MA_slow = AverageFC(Close,SlowLength);//求出长均线值
PlotNumeric("MA1",MA_fast);//在前端界面运行后画出短均线,并命名为MA1
PlotNumeric("MA2",MA_slow);//在前端界面运行后画出长均线,并命名为MA2
If(MarketPosition <>1 && MA_fast[1] > MA_slow[1])//如果没有多头头寸,且前一根K线处的短均线值大于长均线值
{
Buy(0,Open);//以当前Bar(K线)开盘价买入一手
}
If(MarketPosition <>-1 && MA_fast[1] < MA_slow[1])//如果没有空头头寸,且前一根k线处的短均线值小于长均线值
{
SellShort(0,Open);//以当前Bar(K线)开盘价卖出一手
}
if(MarketPosition == 1 && MA_fast[1] < MA_slow[1])//如果有多头头寸,且前一根K线处的短均线值小于长均线值
{
Sell(0,Open);//以当前Bar(K线)开盘价平多仓
}
if(MarketPosition == 1 && MA_fast[1] > MA_slow[1])//如果有空头头寸,且前一根k线处的短均线值大于长均线值
{
BuyToCover(0,Open);//以当前Bar(K线)开盘价平空仓
}
}
温馨提示:投资有风险,选择需谨慎。