//------------------------------------------------------------------------
// 简称: DualMA_Strategy
// 名称: 双均线交易策略
// 类别: 公式应用
// 类型: 内建应用
//------------------------------------------------------------------------
Params
Numeric MAPeriod(60); // 60日均线周期
Numeric LongMAPeriod(720); // 720日均线周期
Vars
Series<Numeric> MA60; // 60日均线
Series<Numeric> MA720; // 720日均线
Events
OnReady()
{
// 设置足够的历史数据缓存
SetBackBarMaxCount(LongMAPeriod + 50);
}
OnBar(ArrayRef<Integer> indexs)
{
// 计算60日均线
MA60 = Average(Close, MAPeriod);
// 计算720日均线
MA720 = Average(Close, LongMAPeriod);
// 长期趋势判断
Bool LongTermBullish = Close > MA720;
Bool LongTermBearish = Close < MA720;
// 开多单逻辑
if (LongTermBullish && Close > MA60[1] && MarketPosition == 0)
{
Buy(1, Open);
}
// 多单止损逻辑
else if (MarketPosition == 1 && Close < MA60)
{
Sell(1, Open);
}
// 开空单逻辑
if (LongTermBearish && Close < MA60[1] && MarketPosition == 0)
{
SellShort(1, Open);
}
// 空单止损逻辑
else if (MarketPosition == -1 && Close > MA60)
{
BuyToCover(1, Open);
}
// 绘制60日均线
PlotNumeric("MA60", MA60);
// 绘制720日均线
PlotNumeric("MA720", MA720, 0, RGB(255, 0, 0));
}
https://video.tbquant.net/video?id=video444
是不是应该看看视频先了解一下信号闪烁的问题?
你用close判断信号条件,那发生信号闪烁不是正常吗