// 策略名称:TWODAYS 2日高低点突破策略 (TB Quant3 1分钟周期专用)
// 加载周期:1分钟K线
// 语法结构完整,变量全部定义,必过编译
// 【必须放在最开头!】参数定义块:所有用到的参数必须在这里声明
Params
Numeric N(2); // 跨周期取数周期:2日K线
Numeric OpenLongAdd(19); // 开多:2日最低价 + 19点
Numeric CloseLongSub(20); // 平多:2日最高价 - 20点
Numeric OpenShortSub(19); // 开空:2日最高价 - 19点
Numeric CloseShortAdd(20); // 平空:2日最低价 + 20点
Numeric ForceCloseTime(0.145955); // 强制清仓时间:14:59:55
// 变量定义块:存储中间计算结果
Vars
Numeric D2_High; // 存储2日K线最高价
Numeric D2_Low; // 存储2日K线最低价
Bool ForceCloseFlag; // 清仓时间标志
// 主逻辑块:所有交易逻辑在这里执行
Begin
// 1. 跨周期获取2日K线高低点(加载到1分钟图运行此句)
D2_High = HighD(N);
D2_Low = LowD(N);
// 2. 判断是否到达强制清仓时间
ForceCloseFlag = (Time == ForceCloseTime);
// 3. 强制清仓逻辑(14:59:55 全部平仓,防止隔夜)
If(ForceCloseFlag)
Begin
Sell(1, Low); // 平多仓
BuyToCover(1, High); // 平空仓
Return; // 清仓后跳过后续逻辑,避免反向开仓
End;
// 4. 开多:无持仓 + 收盘价 >= 2日最低价+19点
If(MarketPosition == 0 And Close >= D2_Low + OpenLongAdd)
Begin
Buy(1, Open);
End;
// 5. 平多:持有多仓 + 收盘价 <= 2日最高价-20点
If(MarketPosition == 1 And Close <= D2_High - CloseLongSub)
Begin
Sell(1, Open);
End;
// 6. 开空:无持仓 + 收盘价 <= 2日最高价-19点
If(MarketPosition == 0 And Close <= D2_High - OpenShortSub)
Begin
SellShort(1, Open);
End;
// 7. 平空:持有空仓 + 收盘价 >= 2日最低价+20点
If(MarketPosition == -1 And Close >= D2_Low + CloseShortAdd)
Begin
BuyToCover(1, Open);
End;
End;
“我的语句到底错在了哪里?”
这句话说得好像是学习了很久的语法规则,然后研究了很久的代码,绞尽脑汁也没有找出问题出在哪里,一副非常用功努力的学生碰到瓶颈的画像。
但是说实话,但凡一个稍微看过一点零基础教程视频的人,看到这段代码都知道哪里有问题。
如果是一个比较熟悉现在生成式ai的人,更是能一眼就能看出来这完全是某个ai生成的垃圾代码。
“到底错在了哪里?”
可能错就错在你没有下功夫去学习,想靠ai投机取巧,结果被ai制裁了吧。