金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 3675|回复: 4

后台交易会出现多开

[复制链接]

2

主题

4

帖子

4

积分

Rank: 1

等级: 新手上路

注册:
2022-5-27
曾用名:
发表于 2022-8-29 14:55 | 显示全部楼层 |阅读模式
VARIABLE:n=0,ss=1,KC_ZH='10000000',KC_PZ='V00';

m5:ma(c,5);
m10:ma(c,10);
kd:ref(cross(m5,m10),1);
kk:ref(cross(m10,m5),1);

if kd then begin:
        n:=ss;
end

if kk then begin:
        n:=-1*ss;
end


平空:TSELLSHORT(kd,ss,LMT,OPEN,0,KC_ZH,KC_PZ),ORDERQUEUE;                  //平空信号

开多:TBUY(kd AND TSELLHOLDINGEX(KC_ZH,KC_PZ,2)=0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0,ss,LMT,OPEN,0,KC_ZH,KC_PZ),ORDERQUEUE;          //开多信号

平多:TSELL(kk,ss,LMT,OPEN,0,KC_ZH,KC_PZ),ORDERQUEUE;                       //平多信号

开空:TBUYSHORT(kk  AND TSELLHOLDINGEX(KC_ZH,KC_PZ,2)=0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0,ss,LMT,OPEN,0,KC_ZH,KC_PZ),ORDERQUEUE;     //开空信号

//开仓撤单
if  currenttime-TORDERTIME(0,1 )>20 THEN BEGIN
        TCANCELEX(1,0,KC_ZH,KC_PZ),ALLOWREPEAT;       
end

//多单信号校正
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n>0 and TSELLHOLDINGEX(KC_ZH,KC_PZ,2)>0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0 then BEGIN
        TSELLSHORT(1,0,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
        TBUY(1,n,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n>0  and TSELLHOLDINGEX(KC_ZH,KC_PZ,2)=0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)<n then BEGIN
        TBUY(1,n-TBUYHOLDINGEX(KC_ZH,KC_PZ,2),MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n>0  and TSELLHOLDINGEX(KC_ZH,KC_PZ,2)=0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)>n then BEGIN
        TSELL(1,TBUYHOLDINGEX(KC_ZH,KC_PZ,2)-n,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end

//空单信号校正
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n<0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)>0 and TSELLHOLDINGEX(KC_ZH,KC_PZ,2)=0 then BEGIN
        TSELL(1,0,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
        TBUYSHORT(1,ABS(n),MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n<0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0 and (TSELLHOLDINGEX(KC_ZH,KC_PZ,2)+n)<0 then BEGIN
        TBUYSHORT(1,ABS(n+TSELLHOLDINGEX(KC_ZH,KC_PZ,2)),MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n<0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0 and (TSELLHOLDINGEX(KC_ZH,KC_PZ,2)+n)>0 then BEGIN
        TSELLSHORT(1,TSELLHOLDINGEX(KC_ZH,KC_PZ,2)+n,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end       
//空仓信号校正       
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n=0 AND TBUYHOLDINGEX(KC_ZH,KC_PZ,2)>0 then BEGIN
        TSELL(1,0,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
END
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n=0 AND TSELLHOLDINGEX(KC_ZH,KC_PZ,2)>0 then BEGIN
        TSELLSHORT(1,0,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end



专家好,我之前编写了一个策略,在后台交易中,账户仓位校正的时候,会出现多开。例如,信号是1手多单,通过校正,账户里面会直接开2手多单;之后会平掉一手。请问这是什么原因造成的,希望得到你专业的解答,谢谢!!!!!!!!!!!!!

回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-29 14:58 | 显示全部楼层
你先查下 具体触发下单信号的是哪2句代码 我才好查。否则直接理逻辑要搞半天。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

2

主题

4

帖子

4

积分

Rank: 1

等级: 新手上路

注册:
2022-5-27
曾用名:
 楼主| 发表于 2022-8-29 15:04 | 显示全部楼层
技术009 发表于 2022-8-29 14:58
你先查下 具体触发下单信号的是哪2句代码 我才好查。否则直接理逻辑要搞半天。

//空单信号校正
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n<0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)>0 and TSELLHOLDINGEX(KC_ZH,KC_PZ,2)=0 then BEGIN
        TSELL(1,0,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
        TBUYSHORT(1,ABS(n),MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n<0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0 and (TSELLHOLDINGEX(KC_ZH,KC_PZ,2)+n)<0 then BEGIN
        TBUYSHORT(1,ABS(n+TSELLHOLDINGEX(KC_ZH,KC_PZ,2)),MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end
if TISREMAINEX(0,KC_ZH,KC_PZ)=0 AND n<0 and TBUYHOLDINGEX(KC_ZH,KC_PZ,2)=0 and (TSELLHOLDINGEX(KC_ZH,KC_PZ,2)+n)>0 then BEGIN
        TSELLSHORT(1,TSELLHOLDINGEX(KC_ZH,KC_PZ,2)+n,MKT,0,0,KC_ZH,KC_PZ),ALLOWREPEAT;
end      
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-29 15:06 | 显示全部楼层
我要看日志里的记录。那个才是唯一的证据。你前面贴的代码我还能找不到下单语句么。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-29 15:08 | 显示全部楼层
先在预警界面,找到重复下单的记录,看下大致时间。然后去找对应的日志。日志里会明确记录哪一行代码下单的。

截图202208291508162119.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-8 00:05 , Processed in 0.288185 second(s), 30 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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