请教一下,在通达信软件里,怎么自定义编写网格交易的量化策略脚本?

109 次浏览 1 个回答

1 个回答

网格交易核心逻辑

  • 区间设定:确定价格波动的上下轨范围,避免极端行情下的无效交易。
  • 网格划分:将上下轨区间按固定间距(百分比或金额)分成若干网格,每格对应一次买卖触发点。
  • 交易规则:价格下跌触及下网格线时买入,上涨触及上网格线时卖出,循环执行赚取区间波动差价。
  • 持仓控制:通过状态变量跟踪当前持仓,避免重复买卖或反向操作。

通达信公式编写基础

  • 公式类型:选择「交易系统公式」,支持BUY/SELL等交易指令。
  • 语法要点:使用变量定义(如VAR1:=...)、条件判断(IF、CROSS等)、序列运算(通达信公式基于K线序列,无需显式循环)。
  • 关键函数
- CLOSE/C:当前收盘价 - MA(X,N):N周期移动平均线(用于基准价) - BUY(COND, VOL, TYPE):买入指令(COND触发条件,VOL交易数量,TYPE=0限价/1市价) - SELL(COND, VOL, TYPE):卖出指令 - REF(X,N):引用N周期前的X值(判断价格穿越网格线)

网格交易脚本示例(百分比间距版)

``通达信 // 参数设置 基准价类型:=1; // 1=MA20, 2=当前价 网格间距:=2; // 每格涨跌幅百分比(如2%) 网格数量:=5; // 上下轨间的网格数 每笔交易股数:=100; // 每格交易数量 上下轨幅度:=10; // 基准价上下浮动百分比(如10%)

// 计算基准价 基准价:=(IF(基准价类型=1, MA(C,20), C)); 上轨:=基准价(1+上下轨幅度/100); 下轨:=基准价(1-上下轨幅度/100);

// 计算网格线(从下到上) 网格线1:=下轨(1+网格间距/100); 网格线2:=网格线1(1+网格间距/100); 网格线3:=网格线2(1+网格间距/100); 网格线4:=网格线3(1+网格间距/100); 网格线5:=网格线4*(1+网格间距/100); // 对应上轨附近

// 持仓状态跟踪(0=空仓,1=持仓) 持仓状态:=IF(ISLASTBAR, 0, REF(持仓状态,1)); // 初始空仓 持仓状态:=IF(BUYCOND,1,IF(SELLCOND,0,持仓状态));

// 买入条件:价格跌破网格线且空仓 BUYCOND:=CROSS(网格线1,C) AND 持仓状态=0; BUYCOND:=BUYCOND OR (CROSS(网格线2,C) AND 持仓状态=0); BUYCOND:=BUYCOND OR (CROSS(网格线3,C) AND 持仓状态=0); BUYCOND:=BUYCOND OR (CROSS(网格线4,C) AND 持仓状态=0); BUYCOND:=BUYCOND OR (CROSS(网格线5,C) AND 持仓状态=0);

// 卖出条件:价格突破网格线且持仓 SELLCOND:=CROSS(C,网格线5) AND 持仓状态=1; SELLCOND:=SELLCOND OR (CROSS(C,网格线4) AND 持仓状态=1); SELLCOND:=SELLCOND OR (CROSS(C,网格线3) AND 持仓状态=1); SELLCOND:=SELLCOND OR (CROSS(C,网格线2) AND 持仓状态=1); SELLCOND:=SELLCOND OR (CROSS(C,网格线1) AND 持仓状态=1);

// 交易指令 BUY(BUYCOND,每笔交易股数,0); SELL(SELLCOND,每笔交易股数,0);

// 绘图(可选) DRAWLINE(1,上轨,1,上轨,COLORRED); DRAWLINE(1,下轨,1,下轨,COLORGREEN); DRAWLINE(1,网格线1,1,网格线1,COLORYELLOW); DRAWLINE(1,网格线2,1,网格线2,COLORYELLOW); DRAWLINE(1,网格线3,1,网格线3,COLORYELLOW); DRAWLINE(1,网格线4,1,网格线4,COLORYELLOW); DRAWLINE(1,网格线5,1,网格线5,COLORYELLOW); ``

参数调整与优化建议

  • 网格间距:波动率高的标的(如科技股)设3%-5%,低波动标的(如蓝筹)设1%-2%。
  • 上下轨幅度:根据标的历史波动范围设定(如10%-20%),避免频繁触发上下轨外交易。
  • 交易数量:按资金规模调整,确保每笔交易金额合理(避免单笔手续费占比过高)。
  • 基准价选择:震荡行情用MA20/30,趋势行情可结合EMA或当前价动态调整。

注意事项

  • 回测验证:使用通达信「公式回测」功能测试历史表现,关注胜率、最大回撤、收益曲线。
  • 实盘适配:加入模拟滑点、手续费(回测时设置),避免理论与实际收益偏差。
  • 行情适应性:网格策略适用于震荡行情,单边趋势下需结合趋势指标辅助(如MACD判断趋势方向)。
  • 风险控制:设置最大持仓数量或止损线,避免极端行情下过度亏损。

若需进一步优化策略或获取低佣交易渠道,可微信公众号搜索:问金测评,点击菜单“专属渠道”对接头部券商专属低佣渠道。