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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 这个条件过滤如何表达?

   

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


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

主题:这个条件过滤如何表达?

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


加好友 发短信
等级:新手上路 帖子:57 积分:40 威望:0 精华:0 注册:2013/5/29 11:03:42
这个条件过滤如何表达?  发帖心情 Post By:2014/2/2 17:14:22    Post IP:113.69.206.39[只看该作者]

 老师,我想在日内模型中加入一个这样的条件过滤:
连续两次开多(或开空)被止损后(如果是开多的话,中间有开多赢利的话就不算),下一次开多(有可能是当天或不是当天了,或是1、2天后的)的价格必须大于上一次开多时的开仓价格。
请教应如何表达?先谢了!

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


加好友 发短信
等级:新手上路 帖子:57 积分:40 威望:0 精华:0 注册:2013/5/29 11:03:42
  发帖心情 Post By:2014/2/3 10:51:08    Post IP:113.72.193.27[只看该作者]

 这条件看似简单,难度却不了,难点在于:
一是连续两次的统计表达;
二是日内模型,却有可能要调用昨天甚至前几天的相关数据,包括开平仓信息、上次被止损平仓的开仓价;
以开多为例:前天有1次开多是达到止损条件而平仓出场的,昨天也有1次开多是达到止损条件而平仓出场的,
中间无论是否出现N次开空的止赢止损都不影响条件成立,但如果有出现开多的,只要它是止赢或是正常收盘平仓等(只要不是被止损出场)的,
那止条件就不成立了。
恳请老师和各位高手指教!!!

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


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

variable:n=0;

if holding>0 and 多仓止损条件 then begin

    sell(1,0,market);

    n:=n+1;

end

if holding>0 and 其他平仓条件 then begin

    sell(1,0,market);

    n:=0;

end

 

n=2就表示你的连续两次了,用全局变量来记录止损的次数,如果非止损平仓的那么就把全局变量重置为0



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

客户服务部

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

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

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


加好友 发短信
等级:新手上路 帖子:57 积分:40 威望:0 精华:0 注册:2013/5/29 11:03:42
  发帖心情 Post By:2014/2/7 14:45:39    Post IP:59.38.109.158[只看该作者]

 新年好!感谢老师指点!虽然我的平仓条件较多,但这个确实也是解决思路来的。另外,我想加入一个时间限制:三日内,连续有连续两次开多被止损的,这个“三日内”如何表示好一点?谢了

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


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

variable:n=0;

if holding>0 and 多仓止损条件 then begin

    sell(1,0,market);

    n:=n+1;

end

if holding>0 and 其他平仓条件 then begin

    sell(1,0,market);

    n:=0;

end

d1:valuewhen(n=1 and ref(n=0,1),date);

d2:date;

d2-d1<3

d1是第一次止损平仓的日期,d2是当前日期,相减后判断是否小于3就行



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

客户服务部

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

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

 回到顶部