以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [讨论]关于TYPEBAR函数与先平后开原则 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=3347) |
-- 作者:j888fff -- 发布时间:2010/10/20 2:13:08 -- [讨论]关于TYPEBAR函数与先平后开原则 思路:开仓后的某K线最高价H如高于开仓时那根K线的最高价,则平仓处理。 根据以上思路编制公式: aa:="kdj.j"(9,3,3) ; 平空:SELLSHORT(cross(aa,80) or h>ref(h,TYPEBAR(1,3)) ,0,thisclose) ; 公式能通过,但由于TYPEBAR函数写于开空编码之前,而这时开空信号还未出现,造成逻辑混乱。所以事实上的效果是第一个平仓信号会紧跟在第一个开仓信号之后,造成错误平仓信号。
改成: aa:="kdj.j"(9,3,3) ; 开空:BUYSHORT(cross(80,aa) or type(1)=2 and enterprice>exitprice ,1,thisclose) ; 公式通过,原来的问题解决了。但此时另一个问题出现,此编法与先平后开的原则相违背,并造成与开空策略中的enterprice>exitprice条件冲突。因为exitprice函数写在平仓之前了。 [此贴子已经被作者于2010-10-20 2:35:11编辑过]
|
-- 作者:fly -- 发布时间:2010/10/20 9:26:35 -- 先平后开的原则-----是指,要开多先平空;要开空先平多 |
-- 作者:j888fff -- 发布时间:2010/10/20 21:19:24 -- 以下是引用fly在2010-10-20 9:26:35的发言:
先平后开的原则-----是指,要开多先平空;要开空先平多 拜托,问题看全了再回复。 |