
等级: 新手上路
- 注册:
- 2025-1-22
- 曾用名:
|

楼主 |
发表于 2025-1-26 12:24
|
显示全部楼层
老师帮忙再看一下我设置公式里参数步长为1,但是右边还是为0,手动改为1一运行就又变为0了,这个该怎么解决呀,这个公式怎么改才能使用呀,真是辛苦您啦老师// 策略名称:双均线动态仓位交易系统
// 适用模式:走完K线模式
//============== 参数定义 ==============//
INPUT:A(5, 1, 100, 1, "短期均线周期"); // 短周期(步长1)
INPUT:B(20, 5, 200, 1, "长期均线周期"); // 长周期(步长1)
INPUT:StopLossPct(2, 0.1, 10, 0.5, "止损百分比%"); // 步长0.5%
INPUT:TakeProfitPct(5, 1, 20, 1, "止盈百分比%"); // 步长1%
INPUT:PositionRatio(0.3, 0.1, 1, 0.05, "仓位比例");// 步长5%
INPUT:FilterVol(100000, 1000, 1000000, 1000, "成交量过滤");// 步长1000
INPUT:LotSize(100, 1, 1000, 1, "合约乘数"); // 股票=100,期货=1
//============== 中间变量 ==============//
MA1 := MA(CLOSE, A);
MA2 := MA(CLOSE, B);
CurrentVol := VOL;
ATRValue := ATR(14);
AvailableCash := CASH(0);
//============== 信号条件 ==============//
// 使用英文变量名确保兼容性
GoldenCross := CROSS(MA1, MA2) AND CurrentVol > FilterVol;
DeathCross := CROSS(MA2, MA1) AND CurrentVol > FilterVol;
// 动态止损止盈(仅在持仓时计算)
LongStopPrice := VALUEWHEN(ENTERBARS()==0, ENTERPRICE()) * (1 - StopLossPct/100);
LongTakeProfit := VALUEWHEN(ENTERBARS()==0, ENTERPRICE()) * (1 + TakeProfitPct/100);
ShortStopPrice := VALUEWHEN(ENTERBARS()==0, ENTERPRICE()) * (1 + StopLossPct/100);
ShortTakeProfit := VALUEWHEN(ENTERBARS()==0, ENTERPRICE()) * (1 - TakeProfitPct/100);
// 平仓条件
CloseLongCond := DeathCross OR CLOSE <= LongStopPrice OR CLOSE >= LongTakeProfit;
CloseShortCond := GoldenCross OR CLOSE >= ShortStopPrice OR CLOSE <= ShortTakeProfit;
//============== 仓位管理 ==============//
PositionSize := FLOOR((AvailableCash * PositionRatio) / (CLOSE * LotSize));
ValidSize := MAX(PositionSize, 1);
//============== 交易系统 ==============//
// 先平仓
SELL(CloseLongCond AND HOLDING>0, 0, THISCLOSE);
SELLSHORT(CloseShortCond AND HOLDING<0, 0, THISCLOSE);
// 后开仓(确保无持仓)
BUY(GoldenCross AND HOLDING==0, ValidSize, THISCLOSE);
BUYSHORT(DeathCross AND HOLDING==0, ValidSize, THISCLOSE);
//============== 监控模块 ==============//
当前持仓:HOLDING, COLORGRAY;
止损线:IF(HOLDING>0, LongStopPrice, IF(HOLDING<0, ShortStopPrice, DRAWNULL)), COLORRED;
资产曲线:ASSET, COLORCYAN,LINETHICK2;
|
-
|