以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- C穿越MA20 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=6415) |
-- 作者:jztyy -- 发布时间:2011/5/4 17:22:52 -- C穿越MA20 初学编程,请问如果要定义C穿越MA20时就开多,写C>MA20,与CROSS(C,MA20),两者是一样的吗? |
-- 作者:阿火 -- 发布时间:2011/5/4 20:26:01 -- 不一样。c>ma20可能一直成立。cross(c,ma20)只有在c由下而上上穿ma20的时候才成立 [此贴子已经被作者于2011-5-4 20:26:49编辑过]
|
-- 作者:jinzhe -- 发布时间:2011/5/5 9:09:35 -- 不一样,c>ma20能一直成立;而cross(c,ma20)只有c上穿ma20时成立。 |
-- 作者:虫儿飞 -- 发布时间:2011/5/5 9:35:38 -- cross(c,ma20) 是从下往上穿过 ma20均线才达成条件 |
-- 作者:jztyy -- 发布时间:2011/5/5 9:52:02 -- 比如 MA5:=MA(CLOSE,5); MA10:=MA(CLOSE,10); MA20:=MA(CLOSE,20); {开多} ENTERLONG: MA5>MA10 AND MA10>MA20,TFILTER; {平多} EXITLONG: MA5<MA10 AND MA10<MA20,TFILTER; 因为MA5>MA10和 MA10>MA20成立后就一直成立,那么它们什么时间开、平仓, 这时MA5>MA10是相当于CROSS(MA5,MA10)、MA10>MA20相当于CROSS(MA10,MA20)吗, 为什么公式用>,而不用CROSS呢 |
-- 作者:fly -- 发布时间:2011/5/5 12:51:07 -- 2楼正解.请楼主再好好体会一下!!!
楼主的本意,是想MA5,MA10,MA20成多头排列的情况下,开多仓吧 按楼主的写法,会在MA5>MA10和 MA10>MA20成立后每一根K线上都开仓
可以改成以下写法,就会在成多头排列的条件,第一次成立时,开多仓 MA5:=MA(CLOSE,5); MA10:=MA(CLOSE,10); MA20:=MA(CLOSE,20);
//当MA5>MA10,且MA10自下而上上穿MA20的条件成立时,开多仓 {开多} ENTERLONG: MA5>MA10 AND CROSS(MA10,MA20),TFILTER; //当MA5<MA10,且MA20自下而上上穿MA10的条件成立时,平多仓 {平多} EXITLONG: MA5<MA10 AND CROSS(MA0,MA10),TFILTER; |