金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 1203|回复: 6

请问下这段要转成后台交易系统要如何转?我用 TENTERPRICE为何不能取到值?

[复制链接]

16

主题

93

帖子

93

积分

等级: 免费版

注册:
2021-10-19
曾用名:
发表于 2023-12-8 15:56 | 显示全部楼层 |阅读模式
//开多单

    if 短多  AND HOLDING=0  AND  kcj=0 then
begin   

    多开:buy(1 and holding=0,SS,market);
   kcj:= ENTERPRICE;
end
  //平多单

     if  H>=kcj+N*MINDIFF AND  HOLDING=SS then
begin  

     目标平多:sell(1,SS,LIMITR,kcj+N*MINDIFF);   
     kcj:=0;
end



  //开多单2

    if 短多   AND HOLDING=SS AND  ENTERBARS>1 then
begin   

    多开2:buy(1,SS,market);
   kcj2:= ENTERPRICE;
end

  //平多单2

     if  H>=kcj2+5*MINDIFF AND  HOLDING=SS*2  then
begin  

     目标平多2:sell(1,SS,LIMITR,kcj2+N*MINDIFF);   
   kcj2:= 0;
end


//开空单

    if 短空 AND HOLDING=0    AND  KKJ=0 then
begin   

    空开:BUYSHORT(1 and holding=0,SS,market);
   KKJ:= ENTERPRICE;
end
  //平空单

     if  L<=KKJ-N*MINDIFF AND  HOLDING = -SS then
begin  

     平空:SELLSHORT(1,SS,LIMITR,KKJ-N*MINDIFF);   
     KKJ:=0;
end



  //开空单2

    if 短空   AND HOLDING=-SS AND  ENTERBARS>1 then
begin   

    空开2:BUYSHORT(1,SS,market);
   KKJ2:= ENTERPRICE;
end

  //平空单2

     if  L<=KKJ2-5*MINDIFF AND  HOLDING=(-SS)*2  then
begin  

     平空2:SELLSHORT(1,SS,LIMITR,KKJ2-N*MINDIFF);   
   KKJ2:= 0;
end




补充内容 (2023-12-8 15:58):
其中variable:kcj=0,kcj2=0;variable:KKJ=0,KKJ2=0;是全局变量
//开多单
  
    if 短多  AND TBUYHOLDINGEX('','',2)=0  AND  kcj=0 then
begin   
      
    多开:Tbuy(1 ,SS,MKT);
   kcj:=TENTERPRICE; ...

补充内容 (2023-12-8 16:00):
我以上这样改对吗?为何无法得到正常回测数据?
回复

使用道具 举报

16

主题

93

帖子

93

积分

等级: 免费版

注册:
2021-10-19
曾用名:
 楼主| 发表于 2023-12-11 15:56 | 显示全部楼层
这个问题很难吗?为何都没有人回复啊
回复

使用道具 举报

19

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-12-12 13:08 | 显示全部楼层
本帖最后由 技术009 于 2023-12-12 13:11 编辑

1.图表转后台:
下单函数,持仓函数进行替换就行了。这些函数在后台函数列表里都有,你逐一进行替换就行。
后台全局变量通常使用:GLOBALVARIABLE
https://www.weistock.com/docs/PE ... 0%E5%8F%98%E9%87%8F
2.
类似这样的逻辑:
kcj:=TENTERPRICE; ...
开仓后记录开仓价的方式 在后台里不是很建议。因为这个函数 在下单瞬间 成交之前必然是委托价,只有实际成交后才是成交价,函数说明里都有提到这点。
所以你这里用全局变量记录,有可能只记录到了实际的委托价,具体看代码逻辑。  建议是需要获取上次开仓价时候直接用TENTERPRICE,而不是用全局变量记,因为有可能记录到一个未成交时候的值。

3.后台的代码回测需要在 后台精细化回测里进行的:
https://www.weistock.com/docs/HE ... 9B%9E%E6%B5%8B.html

如果你是按照图表回测方式回测 是无效的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

16

主题

93

帖子

93

积分

等级: 免费版

注册:
2021-10-19
曾用名:
 楼主| 发表于 2023-12-12 13:41 | 显示全部楼层
好的 我试试看,谢谢1
回复

使用道具 举报

16

主题

93

帖子

93

积分

等级: 免费版

注册:
2021-10-19
曾用名:
 楼主| 发表于 2023-12-12 14:28 | 显示全部楼层
技术009 发表于 2023-12-12 13:08
1.图表转后台:
下单函数,持仓函数进行替换就行了。这些函数在后台函数列表里都有,你逐一进行替换就行。 ...

后台中ENTERPRICE 这个函数可以不改成后台的 TENTERPRICE吗?我改了之后就没有输出,全部取值为0了,不知怎么一回事,我要做的是多次开仓,同时每一个开仓价分别对应着一个平仓价,如何实现这个逻辑?可有你范例?
回复

使用道具 举报

16

主题

93

帖子

93

积分

等级: 免费版

注册:
2021-10-19
曾用名:
 楼主| 发表于 2023-12-12 14:29 | 显示全部楼层
praja 发表于 2023-12-12 14:28
后台中ENTERPRICE 这个函数可以不改成后台的 TENTERPRICE吗?我改了之后就没有输出,全部取值为0了,不知 ...

图表系统中可以实现,为何转成后台就出问题了?恳请帮助
回复

使用道具 举报

14

主题

190

帖子

275

积分

Rank: 9Rank: 9Rank: 9

等级: 管理员

注册:
2021-5-18
曾用名:
发表于 2024-7-1 14:35 | 显示全部楼层
图表转后台,除了把ENTERPRICE转为 TENTERPRICE,还有一些注意事项,建议您到代码编写区,发求助帖。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-18 06:08 , Processed in 0.152912 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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