以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 请问这个策略哪里写得不对? (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=69130) |
-- 作者:lyraley -- 发布时间:2014/8/22 13:22:24 -- 请问这个策略哪里写得不对? //策略一: RC:=REF(C,1); IF C>RC THEN BEGIN
平空:SELLSHORT(1,0,MARKET);
开多:BUY(HOLDING=0,P,MARKET); END IF C<RC THEN BEGIN
平多:SELL(1,0,MARKET);
开空:BUYSHORT(HOLDING=0,P,MARKET); END --------------------------------------------------------- --------------------------------------------------------- //策略二: GHD:=EXTGBDATA(\'GHOLD\'); 平多:=STKINDI(STKLABEL,\'策略一.平多\',0,1); 平空:=STKINDI(STKLABEL,\'策略一.平空\',0,1); 开多:=STKINDI(STKLABEL,\'策略一.开多\',0,1); 开空:=STKINDI(STKLABEL,\'策略一.开空\',0,1); R平空:=REF(平空,1); R平多:=REF(平多,1); R开多:=REF(开多,1); R开空:=REF(开空,1); IF ISLASTBAR=0 THEN BEGIN
SELLSHORT(平空,0,MARKET);
SELL(平多,0,MARKET);
BUY(开多,1,MARKET);
BUYSHORT(开空,1,MARKET); END IF ISLASTBAR THEN BEGIN
IF R平空 AND GHD<0 THEN BEGIN
SELLSHORT(1,0,NEXTOPEN);
GHD:=0;
END
IF R平多 AND GHD>0 THEN BEGIN
SELL(1,0,NEXTOPEN);
GHD:=0;
END
IF R开多 AND GHD=0 THEN BEGIN
BUY(1,1,NEXTOPEN);
GHD:=1;
END
IF R开空 AND GHD=0 THEN BEGIN
BUYSHORT(1,1,NEXTOPEN);
GHD:=-1;
END END EXTGBDATASET(\'GHOLD\',GHD); |
-- 作者:lyraley -- 发布时间:2014/8/22 13:27:05 -- 上面是一个简化的例子,使用策略二进行交易,策略一发出开平信号,GHD是表示多空持仓的函数(因为某些原因不使用HOLDING)。 轮询高频。 在模拟测试时,发现只会开仓不会平仓,请问哪里出了问题? |
-- 作者:pyd -- 发布时间:2014/8/22 13:27:24 -- 策略1平仓时加上holding<0 或holding>0 |
-- 作者:lyraley -- 发布时间:2014/8/22 13:31:37 -- //策略一 RC:=REF(C,1); IF C>RC THEN BEGIN
平空:SELLSHORT(HOLDING<0,0,MARKET);
开多:BUY(HOLDING=0,P,MARKET); END IF C<RC THEN BEGIN
平多:SELL(HOLDING>0,0,MARKET);
开空:BUYSHORT(HOLDING=0,P,MARKET); END [此贴子已经被作者于2014/8/22 13:32:49编辑过]
|
-- 作者:jinzhe -- 发布时间:2014/8/22 13:46:41 -- 图表全局变量用variable,不要用extgbdata |
-- 作者:lyraley -- 发布时间:2014/8/22 14:14:57 -- 其实如果可以我也不想用extgbdata。但因为具体的策略涉及单根K线内的细微操作,之前发帖问过,有版主告诉我不能使用variable只能用extgbdata。 上面的代码应该和全局变量的原理无关吧,因为我上面也说过,不使用ref(,1),而直接用开平仓信号,就能正确的执行。 所以结论是,现在我只能使用extgbdata,麻烦版主具体告知上面的策略哪里出了问题,谢谢。
[此贴子已经被作者于2014/8/22 14:15:19编辑过]
|
-- 作者:jinzhe -- 发布时间:2014/8/22 14:21:38 -- 图表里面不要用extgbata,没有历史数据,影响信号 让你用extgbdata是基于认为你能用后台的前提上 |
-- 作者:lyraley -- 发布时间:2014/8/22 14:26:58 -- 了解了,谢谢! |