以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 求个价差止损止赢代码 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=66925) |
-- 作者:wdbbs -- 发布时间:2014/7/4 6:56:21 -- 求个价差止损止赢代码 这是我的代码,想找一个止损,止赢代码,如开仓价差后面百分之二止损,最高价差百分之二止赢.但是价差计算好像不对,也找不到开仓价差.求管理帮忙 INPUT:N1(20,10,60,5),N2(1,1,9999,1),N3(1,1,9999,1); TL01:=\'TA13\'; TL02:=\'RB13\'; TL_C:=CALLSTOCK(TL01,VTCLOSE)-CALLSTOCK(TL02,VTCLOSE),COLORGREEN; TL_O:=CALLSTOCK(TL01,VTOPEN)-CALLSTOCK(TL02,VTOPEN); TL_H:=CALLSTOCK(TL01,VTHIGH)-CALLSTOCK(TL02,VTHIGH); TL_L:=CALLSTOCK(TL01,VTLOW)-CALLSTOCK(TL02,VTLOW); PZ1SL:=N2; PZ2SL:=N3; MA1:=REF(MA(((TL_H+TL_L+TL_C)/3,N1)),1);//三价平均线 KD:=TL_C>=MA1 AND TL_H<>TL_L; KK:=TL_C<=MA1 AND TL_H<>TL_L; PD:=TL_C<MA1 AND ENTERBARS>0; PK:=TL_C>MA1 AND ENTERBARS>0; DZY:=; KZY:=; DZS:=; KZS:=; //交易系统 IF STRCMP(STKLABEL,TL01)=0 THEN BEGIN SELL(PD AND HOLDING>0,HOLDING,MARKET); SELLSHORT(PK AND HOLDING<0,HOLDING,MARKET); BUY(KD AND HOLDING=0,PZ1SL,MARKET); BUYSHORT(KK AND HOLDING=0 ,PZ1SL,MARKET);
多赢1:SELL(DZY AND HOLDING>0,HOLDING,MARKET),ORDERQUEUE;
空赢1:SELLSHORT(KZY AND HOLDING<0,HOLDING,MARKET),ORDERQUEUE;
多损1:SELL(DZS AND HOLDING>0,HOLDING,MARKET),ORDERQUEUE;
空损1:SELLSHORT(KZS AND HOLDING<0,HOLDING,MARKET),ORDERQUEUE; END IF STRCMP(STKLABEL,TL02)=0 THEN BEGIN SELL(PK AND HOLDING>0,HOLDING,MARKET); SELLSHORT(PD AND HOLDING<0 ,HOLDING,MARKET); BUY(KK AND HOLDING=0,PZ2SL,MARKET); BUYSHORT(KD AND HOLDING=0 ,PZ2SL,MARKET);
多赢2:SELL(DZY AND HOLDING>0,HOLDING,MARKET),ORDERQUEUE; 空赢2:SELLSHORT(KZY AND HOLDING<0,HOLDING,MARKET),ORDERQUEUE;
多损2:SELL(DZS AND HOLDING>0,HOLDING,MARKET),ORDERQUEUE;
空损2:SELLSHORT(KZS AND HOLDING<0,HOLDING,MARKET),ORDERQUEUE; END; |
-- 作者:jinzhe -- 发布时间:2014/7/4 9:06:47 -- 开仓价就是enterprice 开仓后的最高最低价就是hhv(h,enterbars+1) llv(l,enterbars+1) |
-- 作者:wdbbs -- 发布时间:2014/7/4 18:19:06 -- 我说的价差,不是这个, |
-- 作者:wdbbs -- 发布时间:2014/7/4 18:35:38 -- 是套利价差的开仓价 |
-- 作者:jinzhe -- 发布时间:2014/7/7 9:47:34 -- 开仓价差,那么就要写这样的两个公式进行运用 |
-- 作者:jinzhe -- 发布时间:2014/7/7 9:50:18 -- 写这样的两个同样的公式
一个命名为公式1,运用在TA13上 公式最后添加代码: e1:enterprice; e2:stkindi(\'rb13\',\'公式2.e1\',0,datatype); 开仓价差:e1-e2;
另外一个命名为公式2,运用在RB13上 公式最后添加代码: e1:enterprice; e2:stkindi(\'ta13\',\'公式1.e1\',0,datatype); 开仓价差:e1-e2;
|