欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]使用图标程序化交易,就是不执行,这是我的源码,麻烦帮忙看看

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2779人关注过本帖树形打印复制链接

主题:[求助]使用图标程序化交易,就是不执行,这是我的源码,麻烦帮忙看看

帅哥哟,离线,有人找我吗?
熊猫
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:17 积分:0 威望:0 精华:0 注册:2021/1/24 11:39:11
[求助]使用图标程序化交易,就是不执行,这是我的源码,麻烦帮忙看看  发帖心情 Post By:2021/1/26 15:46:37    Post IP:180.166.190.138[只看该作者]

各位大神,我写的策略就是不能实现图标程序化是怎么回事呢?


信号是有的,我回测过,都执行了,就是在使用图标程序化的时候不执行,编程的代码之中有显示持仓holding,持仓都显示开仓了,就是不执行。


参数设置:

N1=20,n2=40 ,n3=20,m1=2,m2=2

 

 

variable:最近1次盈亏数额=0,c1=0;

MA5:MA(CLOSE,n2);

MA10:MA(CLOSE,n3);

CONDBUY:=CROSS(MA5,MA10);

CONDSELL:=CROSS(MA10,MA5);

 

平多开空:=CONDSELL and HOLDING>=0;

平空开多:=CONDBUY and HOLDING<=0;

 

持仓:HOLDING;

上次开仓量:=ENTERVOL;

 

d:=date+19000000;

 

日期条件:=if(d>20200101,1,0);

 

loss_num:=0;

win_num:=0;

 

if HOLDING=0  and 日期条件 then begin

 if condbuy then BUY(CONDBUY ,n1,NEXTOPEN);

 if condsell then BUYSHORT(CONDSELL,n1,NEXTOPEN);

END

 

开仓价格:=ENTERPRICE;

if CONDBUY =1 then 平仓价格:=c;

if CONDSELL=1 then 平仓价格:=c;

pc:=平仓价格;

 

 

if 持仓<0 and condbuy=1 and (PC-开仓价格)>0 then 最近1次盈亏数额:=1;

if 持仓<0 and condbuy=1 and (PC-开仓价格)>0 then 最近1次盈亏数额:=-1;

if 持仓>0 and condsell=1 and (PC-开仓价格)<0 then 最近1次盈亏数额:=-1;

if 持仓>0 and condsell=1 and (PC-开仓价格)>0 then 最近1次盈亏数额:=1;

 

dd:=最近1次盈亏数额;

最近2次盈亏数额:=NUMPROFIT(1);

最近3次盈亏数额:=NUMPROFIT(2);

最近4次盈亏数额:=NUMPROFIT(3);

 

3连亏:= 最近1次盈亏数额<0 and 最近2次盈亏数额<0 and 最近3次盈亏数额<0

and  最近4次盈亏数额>0;

 

3连盈:=最近1次盈亏数额>0 and 最近2次盈亏数额>0 and 最近3次盈亏数额>0

and  最近4次盈亏数额<0;

 

 

if HOLDING>0 and condsell  and 日期条件 then SELL(CONDsell,holding,THISCLOSE);

 

if HOLDING=0 and condsell and 3连亏  and 日期条件 then BEGIN

BUYSHORT( 1, 上次开仓量*m1,NEXTOPEN );

END

 

if HOLDING=0 and condsell and 3连盈  and 日期条件 then BEGIN

BUYSHORT( 1, 上次开仓量/m2,NEXTOPEN );

END

 

if HOLDING=0 and condsell and not(3连亏) and not(3连盈)  and 日期条件

 then BEGIN

BUYSHORT( 1, 上次开仓量,NEXTOPEN );

END

 

 

if HOLDING<0 and condbuy  and 日期条件 then SELLshort(condbuy,holding,THISCLOSE);

 

if HOLDING=0 and condbuy and 3连盈  and 日期条件 then BEGIN

BUY( 1, (-1)*上次开仓量/m2,NEXTOPEN );

END

 

if HOLDING=0 and condbuy and 3连亏  and 日期条件 then BEGIN

BUY( 1, (-1)*上次开仓量*m1,NEXTOPEN );

END

 

if HOLDING=0 and condbuy and not(3连亏) and not(3连盈)  and 日期条件

 then BEGIN

BUY( 1, (-1)*上次开仓量,NEXTOPEN );

END


 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2021/1/26 16:03:20    Post IP:58.246.57.26[只看该作者]

 你至少要保证代码能编译成功啊。

前面这几个变量的定义不符合基本语法。修改如下:
N1:=20;
n2:=40;
n3:=20;
m1:=2;
m2:=2;



命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2021/1/26 16:04:42    Post IP:58.246.57.26[只看该作者]


最后效果如下:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看



命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2021/1/26 16:05:52    Post IP:58.246.57.26[只看该作者]

 你现在有信号的情况下 你要看下当时最新K上是否有信号了。有信号没下单是一回事,没信号那又是一回事了。

你截图我们看下你的设置:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2021/1/26 16:07:34编辑过]


命数如织,当如磐石。
 回到顶部