金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 208|回复: 1

这个代码怎么修改成后台的代码

[复制链接]

105

主题

451

帖子

451

积分

等级: 免费版

注册:
2021-6-1
曾用名:
发表于 2025-1-10 10:58 | 显示全部楼层 |阅读模式
//*****************************策略环境设置及变量定义****************************
Variable:CCTB=0;                        //变量-持仓同步开关
variable:CC1=0,CP1=0;                   //变量-持仓量 入场价
                               //变量-趋势周期参数

//*********************************趋势策略模块***********************************
M1:MA(C,5);  M2:MA(C,30);



//平仓1---固定宽止损-防止黑天鹅意外
JSKDZSD:=ENTERPRICE*0.95;JSKDZSJ:=IF(OPEN<JSKDZSD-MINDIFF,OPEN,JSKDZSD-MINDIFF);
JSKKZSD:=ENTERPRICE*1.05;JSKKZSJ:=IF(OPEN>JSKKZSD+MINDIFF,OPEN,JSKKZSD+MINDIFF);       
IF L<JSKDZSD AND ENTERBARS>0 AND HOLDING>0 THEN BEGIN
        止多:SELL(HOLDING>0,0,LIMITR,JSKDZSJ);
        CC1:=0;CP1:=0;
        tsell(1,0,LMT,JSKDZSJ);
END

IF H>JSKKZSD AND ENTERBARS>0 AND HOLDING<0 THEN BEGIN
        止空:SELLSHORT(HOLDING<0,0,LIMITR,JSKKZSJ);
        CC1:=0;CP1:=0;
        tsellshort(1,0,LMT,JSKKZSJ);
END

//条件
KDTJ:= C>M1 AND M1>M2  AND H>L AND BARPOS>30;   
PDTJ:= C<M1 AND M1<M2  AND H>L;
KKTJ:= C<M1  AND M1<M2 AND  H>L AND BARPOS>30;
PKTJ:= C>M1  AND M1>M2 AND H>L;

//**************************K线走完前3秒内运行执行以下部分*************************
T3:=time0-timetot0(DYNAINFO(207));
ABB:=(T3<=3 AND T3>=0) OR NOT(ISLASTBAR);
IF ABB THEN BEGIN
        IF CC1>0 AND PDTJ THEN BEGIN
                平多:SELL(CC1>0,CC1,THISCLOSE);
                CC1:=0;CP1:=0;
                tsell(1,CC1,mkt);
        END
        IF CC1<0 AND PKTJ THEN BEGIN
                平空:SELLSHORT(CC1<0,ABS(CC1),THISCLOSE);
                CC1:=0;CP1:=0;
                tsellshort(1,CC1,mkt);
        END
        IF CC1=0 AND KDTJ THEN BEGIN
                TN:=MAX(1,INTPART(12000/(O*MULTIPLIER*0.1)+0.3)); //使用资金1%计算仓位手数,最少1手
                开多:BUY(CC1=0,TN,THISCLOSE);
                CC1:=TN;CP1:=C;
                tbuy(1,TN,mkt);
        END
        IF CC1=0 AND KKTJ THEN BEGIN
                TN:=MAX(1,INTPART(12000/(O*MULTIPLIER*0.1)+0.3)); //使用资金1%计算仓位手数,最少1手
                开空:BUYSHORT(CC1=0,TN,THISCLOSE);
                CC1:=-TN;CP1:=C;
                tbuyshort(1,TN,mkt);
        END
END

//*********************************持仓同步交易模块*************************************
//有挂单情形下,不进行该品种的持仓同步,避免重复发单
//早晚9点开盘时间,刚好是分钟整点,交易拥挤,+6则能避开自动换月和持仓同步可能冲突
//在第 6 18 30 42 54 秒执行持仓同步,K结束最后3秒执行交易信号
Is_order:=TGLOBALSUBMITEX(0,'','',0)=0;                             //是否有未成交单,返回0表示无挂单
ABB1:=MOD(timetot0(CURRENTTIME)+6,12)=0;                            //采用CURRENTTIME函数来精准控制持仓同步功能运行时间
IF Is_order AND CCTB AND ABB1 THEN BEGIN                            //不需要持仓同步,则在第一行修改变量CCTB=0
  CC2:=HOLDING;                                                               //新仓  
  CC3:=THOLDING;                                                             //实际持仓
  xiadan1:=CC2-CC3;                                                          //持仓差
        if xiadan1>0.5 then begin                                                                         //xiadan1数字增加,只能是平空 平空开多 开多
                cang:=min(xiadan1,abs(CC3));
                if CC3<0 then tsellshort(1,cang,mkt),allowrepeat;                    //平空
                cang:=xiadan1+min(CC3,0);
                if cang>0 then tbuy(1,cang,mkt),allowrepeat;                         //开多
        end
        if xiadan1<-0.5 then begin                                                                             //xiadan1数字减少,只能是平多 平多开空 开空
                cang:=min(abs(xiadan1),abs(CC3));
                if CC3>0 then tsell(1,cang,mkt),allowrepeat;                         //平多
                cang:=abs(xiadan1)-max(CC3,0);
                if cang>0 then tbuyshort(1,cang,mkt),allowrepeat;                    //开空
        end
END

资产:ASSET,NOAXIS,COLORMAGENTA,PRECISION0;
持仓:CC1,nodraw,COLORYELLOW,PRECISION0;
持价:trimprice(CP1),NODRAW,COLORRED;
次数:totaltrade,NODRAW;
胜率:percentwin,NODRAW,PRECISION2,COLORRED;

DEBUGFILE('D:\TEST.TXT',stklabel&'开多条件%.0f',KDTJ);
DEBUGFILE('D:\TEST.TXT',stklabel&'开空条件%.0f',KKTJ);
DEBUGFILE('D:\TEST.TXT',stklabel&'平多条件%.0f',PDTJ);
DEBUGFILE('D:\TEST.TXT',stklabel&'平空条件%.0f',PKTJ);
DEBUGFILE('D:\TEST.TXT',stklabel&'M1数值%.3f',M1);
DEBUGFILE('D:\TEST.TXT',stklabel&'M2数值%.3f',M2);
DEBUGFILE('D:\TEST.TXT',stklabel&'M2数值%.3f',M2);
DEBUGFILE('D:\TEST.TXT',stklabel&'持仓%.0f',CC1);
DEBUGFILE('D:\TEST.TXT',stklabel&'持仓函数%.0f',HOLDING);
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-1%.3f',REF(C,1));
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-2%.3f',REF(C,2));
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-3%.3f',REF(C,3));
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-4%.3f',REF(C,4));
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-5%.3f',REF(C,5));
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-6%.3f',REF(C,6));
DEBUGFILE('D:\TEST.TXT',stklabel&'收盘价-7%.3f',REF(C,7));

整体代码框架不要变,其次修改在哪里,有些类似的策略修改过程中还有哪些需要修改的?

回复

使用道具 举报

2

主题

617

帖子

658

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-10
曾用名:
发表于 2025-1-10 11:00 | 显示全部楼层
你这个还是图表后台混搭的逻辑架构。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-6 04:08 , Processed in 0.230948 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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