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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 请教自动添减开仓手数如何写?

   

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


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

主题:请教自动添减开仓手数如何写?

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
请教自动添减开仓手数如何写?  发帖心情 Post By:2018/8/14 15:06:13    Post IP:223.72.67.195[显示全部帖子]

我是后台日内自动交易程序,想要添加一个自动加减开仓手数的公式:当连续盈利时自动将开仓手数加倍。一旦出现亏损时将开仓手数降为1手。经电话咨询上海金字塔顾问,说是连续盈亏次数的表达式只能用在图表而后台则不能用。并让我在论坛上请教你们看看如何表述此意。拜托!请写下源代码,多谢!

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
  发帖心情 Post By:2018/8/14 18:06:36    Post IP:124.239.252.109[显示全部帖子]

请教:若日内交易,该品种尚未有任何成交时,TNUMSEQLOSS是=0  吗?  那  TNUMSEQWIN此时是否也=0?

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
  发帖心情 Post By:2018/8/15 9:08:12    Post IP:124.239.252.109[显示全部帖子]

     请您指教, 以下这个写法有何不对的地方?(kcss是指开仓手数)此公式放在开仓公式内。是否可以不用全局变量啦?
      if   tnumseqwin>=1  and  tnumseqwin<=2    then KCSS:=tnumseqwin*2 ;
      if  (tnumseqloss>=0  or    tnumseqwin>=3)   then KCSS:=1;    若日内尚无成交时,若首次开仓只能是1手。 这么写有哪点错误? 

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
  发帖心情 Post By:2018/8/15 10:14:49    Post IP:124.239.252.109[显示全部帖子]

我是后台日内多品种自动交易程序,想要添加一个自动加减开仓手数的公式:当连续盈利时自动将开仓手数加倍。一旦出现亏损时将开仓手数降为1手。当日内尚未开仓时,若首次开仓,则开仓手数为1手。以下写的有哪点不对,为什么?多谢费心指教!!
 
     if    TNUMSEQWIN>=1       then   ss:=2*TNUMSEQWIN;      
     if    TNUMSEQLOSS>=0    then   ss:=1;
         

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
  发帖心情 Post By:2018/8/15 11:25:40    Post IP:124.239.252.109[显示全部帖子]

 您使用上次开仓量函数TENTERVOL(ss:=2*TENTERVOL;),那若上次开仓量是亏损,怎么办?它能自动鉴别上次是连续赢还是连续亏吗?

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
  发帖心情 Post By:2018/8/15 12:36:25    Post IP:124.239.252.109[显示全部帖子]

抱歉,想通了不存在自动鉴别上次是连续赢还是连续亏的问题您在上面讲的(if    TNUMSEQWIN>=1       then   ss:=2*TENTERVOL;      //利用了一个上次开仓量函数。)此公式前面已定义了,只有在连赢条件下TENTERVOL才能成立。
            
        还有一个问题:为什么ss:=1;     //必须有一个初始定义才成?
              
       请问您写的如下公式是否这样就可以这样使用了?那也就是说,就不用全局变量来描述了。是吗?
 
ss:=1;//必须有一个初始定义才行
if    TNUMSEQWIN>=1       then   ss:=2*TENTERVOL;      //利用了一个上次开仓量函数。
if     TNUMSEQLOSS>=0    then   ss:=1;

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


加好友 发短信 hsm822
等级:新手上路 帖子:24 积分:10 威望:0 精华:0 注册:2012/7/30 21:57:25
  发帖心情 Post By:2018/8/15 13:36:15    Post IP:124.239.252.109[显示全部帖子]

您回答我的公式中,为什么先要对ss先要有个初始定义?直接赋值为什么不行?请指教一下。
             
我的SS是用在这种情况下的: if     kdcprice>0  then   tbuy(1,SS,lmt,dynainfo(34),0,myaccount,stklabel);            

以下是您写的
     
        ss:=1;//必须有一个初始定义才行
        if    TNUMSEQWIN>=1       then   ss:=2*TENTERVOL;      //利用了一个上次开仓量函数。
        if     TNUMSEQLOSS>=0    then   ss:=1;

以上您写的这个式子是否就可以直接使用,是否就可以不用全局变量的写法了?多谢!

 回到顶部