以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://www.weistock.com/bbs/list.asp?boardid=2) ---- 取第一次开仓价格 (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=160258) |
-- 作者:waimm2020 -- 发布时间:2017/12/8 11:35:34 -- 取第一次开仓价格 //第一次开多单价格 nn1:barslast(HOLDING=0 AND KDTJ=1); DD:REF(enterprice,nn1); //第一次开空单价格 nn2:barslast(HOLDING=0 AND KKTJ=1); KK:REF(enterprice,nn2); 请教老师,我写的取第一次开仓价格测试不对。帮忙看看问题出现在哪 谢谢!
|
-- 作者:waimm2020 -- 发布时间:2017/12/8 11:42:44 -- 也就是说初始建仓多单或者空单的价格,这里的价格可以是满足开仓条件的价格,也可以是实际成交的价格,分别怎么去取值。 |
-- 作者:banzhuan -- 发布时间:2017/12/8 13:10:28 -- 可以用BARSSINCE函数,求得第一次条件成立的位置,然后再用ref找出该位置的价格 |
-- 作者:waimm2020 -- 发布时间:2017/12/8 14:05:40 -- //第一次开多单价格 NN1:BARSSINCE(HOLDING=0 AND CROSS(C,HH20)); DD:REF(HH20,NN1); //第一次开空单价格 NN2:BARSSINCE(HOLDING=0 AND CROSS(LL20,C)); KK:REF(LL20,NN2); 写出来不对,请老师帮忙看看错误在哪?
|
-- 作者:banzhuan -- 发布时间:2017/12/8 14:24:31 -- aa: BARSSINCE(BUYCON );//取得第一次满足开多条件时的位置 bb: ref(ENTERPRICE,aa);//
|
-- 作者:waimm2020 -- 发布时间:2017/12/8 14:36:13 -- BUYCON的意思是满足开多条件?还是说申明一个全局变量? |
-- 作者:banzhuan -- 发布时间:2017/12/8 14:50:01 -- 抱歉,没说清楚,buycon就相当于您的 CROSS(C,HH20),开多的条件 |
-- 作者:waimm2020 -- 发布时间:2017/12/8 14:50:48 -- 我没有申明全局变量,建立了一个开多条件: KDTJ:IF(MACD>REF(MACD,1) AND MA1>MA2),1,0); //第一次开多单价格 NN1:BARSSINCE(KDTJ=1); DD:REF(ENTERPRICE,NN1); 这样写始终不对。请老师帮助给了正确的写法。谢谢! |
-- 作者:banzhuan -- 发布时间:2017/12/8 15:14:16 -- 1. 你现在的DD是要取得第一次开仓位置的前一次开仓价了,建议 DD:REF(ENTERPRICE,NN1);中, 把enterprise改成open 或 close; 2. 最新K线上的价格可以按市价来,历史的成交价格实际是取不到的,可以按第二根K的开盘价来或按本根K的收盘价来
|
-- 作者:waimm2020 -- 发布时间:2017/12/8 16:08:10 -- MA1:=MA(C,12); MA2:=MA(C,26); DIFF : =EMA(C,12) - EMA(C,26); DEA : =EMA(DIFF,9); MACD : =2*(DIFF-DEA), COLORSTICK; KDTJ:IF(MACD>REF(MACD,1) AND MA1>MA2,1,0); KKTJ:IF(MACD<REF(MACD,1) AND MA1<MA2,1,0); NN1:BARSSINCE(KDTJ=1); DD:REF(C,NN1); NN2:BARSSINCE(KKTJ=1); KK:REF(C,NN2); 这是全部代码,怎么都不对。请教老师问题出现在哪? |