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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 帮修正一下软件限制开关

   

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


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

主题:帮修正一下软件限制开关

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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
帮修正一下软件限制开关  发帖心情 Post By:2017/2/16 11:04:52    Post IP:121.13.65.239[只看该作者]

帮修正一下这个日内限制
因为仓位管理有分形,不能在IF语句中开平仓
要求是这样的:日内只允许一次上穿或下穿开平仓,但是在上方及下方可以开平仓多次
               当上穿开多仓后,如果行情回到下方,那平能平多仓,但能平空仓,如果再回到上方多空不限
               当下穿开空仓后,如果行情回到上方,那平能平空仓,但能平多仓,如果再回到下方多空不限
下面是精减过的调式代码


ma1:ma(c,100);

KDD:=close>ma1;          //开多条件
PDD:=ma1>close;          //平多条件
KKD:=ma1>close;          //开空条件
PKD:=close>ma1;          //平空条件
//------------------软件限制开关开始-----------
variable:n1:=1;
variable:n2:=1;
//正关
if n1=1 and KDD and holding=0 then begin  //怎么知道开过仓?
  //  buy(1,1,marketr);  因为开平仓部门有仓位分形,没有办法在这里开平仓
    n1:=0;      //平多,开空无效
end
//负关
if n2=1 and KKD and holding=0 then begin
  //  buy(1,1,marketr); 因为开平仓部门有仓位分形,没有办法在这里开平仓
     KDD:=0;
    n2:=0;      //平空,开多无效
end

if time=closetime(0) then n1:=1;
if time=closetime(0) then n2:=1;

IF  n1=0 and C<ma1  THEN   PDD:=0;    //当开过一次多仓时,价格回到低位也不允许平多仓
IF  n2=0 and C>ma1  THEN   PKD:=0;    //当开过一次空仓时,价格回到高位也不允许平空仓
//--------------软件限制开关结束---------得到的标志可以放在后面加以限制-----------------

KD:=KDD ;          //开多条件
PD:=PDD and n1;          //平多条件
KK:=KKD and n2;          //开空条件
PK:=PKD ;//and n1;          //平空条件

平空:SELLSHORT(PK,1,THISCLOSE);                  //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE);          //开多信号
平多:SELL(PD,1,THISCLOSE);                       //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE);     //开空信号


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/16 11:18:33    Post IP:180.173.193.42[只看该作者]

当上穿开多仓后,如果行情回到下方,那平能平多仓,但能平空仓,如果再回到上方多空不限

这句要表达什么意思?



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
  发帖心情 Post By:2017/2/16 11:33:41    Post IP:121.13.65.239[只看该作者]

就是防止来回的打仓,在那个均线上方,不限制,要是上了均线开多后,又下来,就是杠仓了

相当于这样,PD:=PDD  and C<ma1  AND  今天开的仓就不能平仓,但是昨天的单可以平   (如果C>ma1那平仓有效);          //平多条件 ;       



这有一个不会做的标志,那个开关用N可以,但是开仓标志不行,因为下面有可能开仓许可但是他并没有开仓,因为这个标志只有开过仓才有效,想在IF里不停的置,当有效开仓后就没有加法进IF里置1,但是写不出来

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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
  发帖心情 Post By:2017/2/16 11:48:44    Post IP:121.13.65.239[只看该作者]

这里面有一个问题,是我上方的开仓请求,下面这开平仓处理不一定会执行,因为开平仓中还有很多限制

我上面没有写更多的如下(这个当日只限一次的开仓限制只是其中的一个限制)
开多:BUY(KD  and  时间   AND 开仓数量  AND 限制开仓 AND 限制开仓2 AND HOLDING=0,1,THISCLOSE);          //开多信号
平多:SELL(PD and 时间   AND 开仓数量  AND 限制平仓 AND 限制平仓2,1,THISCLOSE);                       //平多信号

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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
  发帖心情 Post By:2017/2/16 11:54:14    Post IP:121.13.65.239[只看该作者]

  发帖心情 Post By:2017-2-16 11:18:33    Post IP:180.173.193.42[只看该作者

当上穿开多仓后,如果行情回到下方,那平能平多仓,但能平空仓,如果再回到上方多空不限

这句要表达什么意思?


这句话没有说明不好意思
当上穿开多仓后,如果行情回到下方(这只限日内回头),那价格在均线下方,平多无效,但能平空(我的仓位里可以同时开多空的,所以我需要一个标签让执行空方操作有效)
如果价格再次日内回到上方(刚才上穿的),那么所有的多空操作不限制,就是这个限制程序相当于无效的


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/16 13:13:35    Post IP:180.169.30.6[只看该作者]

以下是引用jinzhe在2017-2-16 11:18:33的发言:

当上穿开多仓后,如果行情回到下方,那平能平多仓,但能平空仓,如果再回到上方多空不限

这句要表达什么意思?

”那平能平多仓,但能平空仓”

我的意思是上面那段话里面的这句话,不知道讲什么意思,



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
  发帖心情 Post By:2017/2/16 14:38:16    Post IP:121.13.65.239[只看该作者]

你只要一个标志就行,如允许平仓,允可平仓:=1;这样就会有程序去执行



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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
  发帖心情 Post By:2017/2/16 14:40:31    Post IP:121.13.65.239[只看该作者]

你再回到问题的原点,只要不要在IF里面开平仓,而把可以开平仓用标志标上,我在后面会有程序去执行开平仓的就可以了

要求是这样的:日内只允许一次上穿或下穿开平仓,但是在上方及下方可以开平仓多次
               当上穿开多仓后,如果行情回到下方,那平能平多仓,但能平空仓,如果再回到上方多空不限
               当下穿开空仓后,如果行情回到上方,那平能平空仓,但能平多仓,如果再回到下方多空不限


//------------------------------------
  发帖心情 Post By:2017-2-16 11:48:44    Post IP:121.13.65.239[只看该作者

这里面有一个问题,是我上方的开仓请求,下面这开平仓处理不一定会执行,因为开平仓中还有很多限制

我上面没有写更多的如下(这个当日只限一次的开仓限制只是其中的一个限制)
开多:BUY(KD  and  时间   AND 开仓数量  AND 限制开仓 AND 限制开仓2 AND HOLDING=0,1,THISCLOSE);          //开多信号
平多:SELL(PD and 时间   AND 开仓数量  AND 限制平仓 AND 限制平仓2,1,THISCLOSE);                       //平多信号


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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2017/2/16 14:45:26    Post IP:180.169.30.6[只看该作者]

以下是引用jinzhe在2017-2-16 13:13:35的发言:

”那平能平多仓,但能平空仓”

我的意思是上面那段话里面的这句话,不知道讲什么意思,

所以, 你能不能解释一下这句话,好让我知道你想要干什么?



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:70 积分:0 威望:0 精华:0 注册:2016/11/23 11:06:46
  发帖心情 Post By:2017/2/16 14:50:02    Post IP:121.13.152.244[只看该作者]

我就是有两个标志,一个是允许平多一个不允许

好吧,你当不存在,只出一个限制当日已经过线的平多,就是开多了,再回来不许平多,再回到线上才允许平多
[此贴子已经被作者于2017-2-16 14:51:07编辑过]

 回到顶部
总数 26 1 2 3 下一页