
等级: 专业版
- 注册:
- 2025-11-7
- 曾用名:
|

楼主 |
发表于 2025-11-11 09:37
|
显示全部楼层
程序调通了,但是没有日志输出,老师可以帮我看看代码哪里有问题么
INPUT:
DebugMode(True, '启用调试日志');
// 时间戳生成(YYYYMMDDHH)
TradeHour := IF(HOUR<10, '0'+NUMTOSTR(HOUR,0), NUMTOSTR(HOUR,0));
TimeStamp := NUMTOSTR(DATE,0) + TradeHour;
// 条件变量安全转换(PEL原生方式)
Cond1Str := IF(cond1=1, 'True', IF(cond1=0, 'False', 'Invalid'));
Cond2Str := IF(cond2=1, 'True', IF(cond2=0, 'False', 'Invalid'));
// 信号值安全检测(通过VALID函数)
LongSignalStr := IF(VALID(空仓做多条件), NUMTOSTR(空仓做多条件,2), 'Null');
// 持仓状态检测(双重验证)
HoldPosition := TBUYHOLDINGEX('','',2);
HoldStr := IF(VALID(HoldPosition), NUMTOSTR(HoldPosition,0),
IF(TBUYHOLDINGEX('','',1)>=0, 'Error', 'Null'));
// 日志内容构建(优化字符串拼接)
LogContent :=
TimeStamp + '品种"' + STKLABEL + '"' +
',交易条件Cond1="' + Cond1Str +
'",Cond2="' + Cond2Str +
'",多做信号="' + LongSignalStr +
'",持仓="' + HoldStr + '"';
// 写入日志(增加写入条件控制)
IF DebugMode AND (BARSTATUS=2 OR (ISLASTBAR AND VOL>0)) THEN
DEBUGFILE('C:\Tradelog\TradeLog_'+NUMTOSTR(DATE,0)+'.log', LogContent, 0); |
|