金字塔决策交易系统

标题: 关于每次同向开单手数差异定制问题 [打印本页]

作者: Yang    时间: 2024-5-23 08:56
标题: 关于每次同向开单手数差异定制问题
按照以下逻辑是否可以实现每次不同数量的开仓?比如一共开5次,单同向手数最高不超过50手

// 定义开仓手数
//多头
IF holding = 0 THEN 开多手数 := 2;
IF holding = 2 THEN 开多手数 := 4;
IF holding = 6 THEN 开多手数 := 8;
IF holding = 14 THEN 开多手数 := 14;
IF holding = 28 THEN 开多手数 := 22;
//空头
IF holding = 0 THEN 开空手数 := -2;
IF holding = -2 THEN 开空手数 := -4;
IF holding = -6THEN 开空手数 := -8;
IF holding = -14 THEN 开空手数 := -14;
IF holding = -28THEN 开空手数 := -22;

// 交易执行
开多: BUY(开多条件 AND HOLDING <= 50, 开多手数, LIMITR, L1);
平多: SELL(平多条件 AND HOLDING >= 0, 0, LIMITR, H1);

开空: BUYSHORT(开空条件 AND HOLDING > =-50, 开空手数, LIMITR, H1);
平空: SELLSHORT(平空条件 AND HOLDING <= 0, 0, LIMITR, L1);

但是这样有个问题,就是实际运行后发现,同一个开单条件重复开单还是会超过50,且开2手第二次不一定是开4,4以后会突然跳到22手。


作者: 技术006    时间: 2024-5-23 09:13
本帖最后由 技术006 于 2024-5-23 09:21 编辑

单独这部分代码应该不会出现你说的现象仓位突增的情况,开仓顺序一定是递增 ,其次是你的开仓条件最大可以开6次,最后还会超出50手,你应该还有其他代码逻辑对仓位做过了变化。

你可以在各个开仓位置前面输出holding。下面是图表调试教程
https://www.weistock.com/docs/In ... 95%99%E7%A8%8B.html

作者: 技术010    时间: 2024-5-23 09:17
1、你这个也不能控制开仓不超过50手啊。你开了28手,再开仓22手,就是50手了,也满足holding<=50啊。
2、那你就看图上连续开仓的信号嘛,看信号每次开仓的手数是多少。从逻辑上看,开多2手的信号后,下面的开多信号的手数就是4手。只能输出holding的值来看了。




欢迎光临 金字塔决策交易系统 (https://www.weistock.com/BBS/) Powered by Discuz! X3.4