Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:程序

1楼
新手123 发表于:2016/4/16 19:51:35

老师。

   你好,能帮忙把这段程序改为我们的金字塔程序吗?谢谢

 

 

//参数:  K1 15   K2 10
SHORT:=12;
LONG:=26;
M:=9;
MA1:=MA(C,10);
MA2:=MA(C,20);
DIFF :=EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA  :=EMA(DIFF,M);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
SJ:=TIME>=0900 AND TIME<=1500;
 CROSS(MA1,MA2) AND CROSS(MACD,0) AND SJ ,BPK;
CROSS(MA2,MA1) AND CROSSDOWN(MACD,0)  AND SJ  ,SPK;
NN:=BARSLAST(DATE<>REF(DATE,1))+1;
HH:=REF(HHV(H,NN),NN);
//昨日最高
HC:=REF(HHV(C,NN),NN);
//昨日最高收盘
LL:=REF(LLV(L,NN),NN);
//昨日最低
LC:=REF(LLV(C,NN),NN);
//昨日最低收盘
RANGER:=IFELSE((HH - LC) >= (HC - LL),HH - LC,HC - LL);
//取最高减去最第收盘。 与 最高收盘减去最低价格, 两者中大的那个
BUYTRIG:=K1/10*RANGER;
SELLTRIG:=K2/10*RANGER;
BUYPOSITION:=REF(OPEN,NN-1)+BUYTRIG;
//今日开盘+一定幅度
SELLPOSITION:=REF(OPEN,NN-1)-SELLTRIG;
//今日开盘-一定幅度
H>BUYPOSITION && NOT(REF(EXIST(H>BUYPOSITION,NN),1)) && COUNT(H>BUYPOSITION && NOT(REF(EXIST(H>BUYPOSITION,NN),1)),NN)<2  AND SJ ,BPK;
L<SELLPOSITION && NOT(REF(EXIST(L<SELLPOSITION,NN),1)) && COUNT(L<SELLPOSITION && NOT(REF(EXIST(L<SELLPOSITION,NN),1)),NN)<2  AND SJ ,SPK;

C<=(BKPRICE-BKPRICE*0.015) ,SP;
C>=(SKPRICE+SKPRICE*0.015),BP;
SETSIGPRICETYPE(BPK,LIMIT_ORDER);//市价下单
SETSIGPRICETYPE(SPK,LIMIT_ORDER);
SETSIGPRICETYPE(BK,LIMIT_ORDER);
SETSIGPRICETYPE(SK,LIMIT_ORDER);
SETSIGPRICETYPE(BP,LIMIT_ORDER);
SETSIGPRICETYPE(SP,LIMIT_ORDER);
CLOSEKLINE(1,10);//收盘前最后1根K线提前10秒走完
AUTOFILTER;

2楼
jinzhe 发表于:2016/4/18 9:18:42

SHORT:=12;
LONG:=26;
M:=9;
MA1:=MA(C,10);
MA2:=MA(C,20);
DIFF :=EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA  :=EMA(DIFF,M);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
SJ:=TIME>=090000 AND TIME<=150000;
if CROSS(MA1,MA2) AND CROSS(MACD,0) AND SJ then begin
 sellshort(1,0,marketr);
 buy(holding=0,1,marketr);
end
if CROSS(MA2,MA1) AND CROSS(0,macd)  AND SJ then begin
 sell(1,0,marketr);
 buyshort(holding=0,1,marketr);
end
NN:=BARSLAST(DATE<>REF(DATE,1))+1;
HH:=REF(HHV(H,NN),NN);
//昨日最高
HC:=REF(HHV(C,NN),NN);
//昨日最高收盘
LL:=REF(LLV(L,NN),NN);
//昨日最低
LC:=REF(LLV(C,NN),NN);
//昨日最低收盘
RANGER:=IFELSE((HH - LC) >= (HC - LL),HH - LC,HC - LL);
//取最高减去最第收盘。 与 最高收盘减去最低价格, 两者中大的那个
BUYTRIG:=K1/10*RANGER;
SELLTRIG:=K2/10*RANGER;
BUYPOSITION:=REF(OPEN,NN-1)+BUYTRIG;
//今日开盘+一定幅度
SELLPOSITION:=REF(OPEN,NN-1)-SELLTRIG;
//今日开盘-一定幅度
if H>BUYPOSITION && NOT(REF(EXIST(H>BUYPOSITION,NN),1)) && COUNT(H>BUYPOSITION && NOT(REF(EXIST(H>BUYPOSITION,NN),1)),NN)<2  AND SJ then begin
 sellshort(1,0,marketr);
 buy(holding=0,1,marketr);
end
if L<SELLPOSITION && NOT(REF(EXIST(L<SELLPOSITION,NN),1)) && COUNT(L<SELLPOSITION && NOT(REF(EXIST(L<SELLPOSITION,NN),1)),NN)<2  AND SJ then begin
 sell(1,0,marketr);
 buyshort(holding=0,1,marketr);
end

if C<=(enterprice-enterprice*0.015) and holding>0 then sell(1,0,marketr);
if C>=(enterprice+enterprice*0.015) and holding<0 then sellshort(1,0,marketr);

 

3楼
新手123 发表于:2016/4/18 20:54:26
谢谢
共3 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01172 s, 3 queries.