金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
123
返回列表 发新帖
楼主: 106379

回测时出现了问题

[复制链接]

29

主题

207

帖子

207

积分

Rank: 4

等级: 专业版

注册:
2025-9-29
曾用名:
 楼主| 发表于 2026-1-26 16:27 | 显示全部楼层
资深技术05 发表于 2026-1-26 16:10
有一定影响。因为默认情况下 一个K周期内,某一行的下单语句只能触发一次(无论单子是否成交亦或者是废单) ...

好的,感谢老师的指导。请问我如何设置一个亏损2%的止损之类,止损后则该交易品种当日不再进行开仓交易。并且不会影响其他品种的正常交易,这样要怎么写?
回复

使用道具 举报

2

主题

6204

帖子

6204

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2026-1-26 16:45 | 显示全部楼层
就参考这个范例就行了  。止损时候做个记录即可。
[PEL] 复制代码
input: 止损比例(2, 0.1, 10, 0.1); // 止损百分比,默认为2%
// 全局变量键名定义
止损日期变量 := stklabel & '_stop_loss_date';


// 获取上次止损日期
上次止损日期 := extgbdata(止损日期变量);

// 止损逻辑
if tbuyholdingex('','',1) > 0 and topenprofitex('','',1,0) <= -止损比例 then begin
    tsell(1,0,mkt);
    extgbdataset(止损日期变量, date); // 记录止损日期
end

// 开仓条件(示例:简单均线金叉)
ma5 := ma(c,5);
ma10 := ma(c,10);
金叉条件 := cross(ma5,ma10);
死叉条件 := cross(ma10,ma5);

// 开仓前检查 当前日期 > 上次止损日期(说明是新交易日)

if (date > 上次止损日期 or 上次止损日期 = 0)  then begin
    // 多头开仓
    if 金叉条件 then begin
        tbuy(1,0,mkt);
    end
    
end
回复

使用道具 举报

29

主题

207

帖子

207

积分

Rank: 4

等级: 专业版

注册:
2025-9-29
曾用名:
 楼主| 发表于 2026-1-26 21:13 | 显示全部楼层
资深技术05 发表于 2026-1-26 16:45
就参考这个范例就行了  。止损时候做个记录即可。
[mw_shl_code=pel,true]input: 止损比例(2, 0.1, 10, 0. ...

请问在如果我使用后台程序化交易是用"KQYY_DAY_1.ED#DAY"这样引用还是用STKINDIEX( '','KQYY_DAY_1.ED',0 ,6 ,0 ,800 );这种引用好呢?两者有什么区别?
回复

使用道具 举报

2

主题

6204

帖子

6204

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-24
曾用名:
发表于 2026-1-27 08:45 | 显示全部楼层
后者可以限定数据量,在某些复杂指标调用过程中,可以限定数据量来降低计算量负荷。

而在不需要跨品种情况下 前者比一般的 用效率会高一点。所以2者总体上区别可能没那么大,建议以实际运行情况为准。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2026-3-1 03:57 , Processed in 0.162551 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表