金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 3641|回复: 23

帮我编写成金字塔策略

[复制链接]

4

主题

34

帖子

34

积分

Rank: 1

等级: 新手上路

注册:
2024-4-19
曾用名:
发表于 2024-5-13 09:53 | 显示全部楼层 |阅读模式
SJ:=IF(DATE+19000000<22300414,1,0);{+4天上方时间为准}VAR2:=EMA(CLOSE,120)*SJ;VAR3:=(CLOSE*SJ-VAR2*SJ)*2/(120+1)+VAR2;生命线:=VAR3*SJ,LINETHICK2,COLOR0000FF;XCLOSE2:=EMA((OPEN+HIGH+LOW+CLOSE)/4,3);IF((生命线>=XCLOSE2),生命线,DRAWNULL),LINETHICK2,COLOR00FF00;IF((生命线<XCLOSE2),生命线,DRAWNULL),LINETHICK2,COLOR0000FF;MA3:=MA(C,170);HH1:=IF(H<REF(H,1)&&REF(H,1)<REF(H,2),REF(H,2),0);LL1:=IF(L>REF(L,1)&&REF(L,1)>REF(L,2),REF(L,2),0);HH2:=VALUEWHEN(HH1>0,HH1);LL2:=VALUEWHEN(LL1>0,LL1);HH:=HHV(HIGH,1)/10*SJ+HHV(HIGH,2)/10+HHV(HIGH,2)/10+HHV(HIGH,4)/10+HHV(HIGH,4)/10+HHV(HIGH,8)/10+HHV(HIGH,8)/10+HHV(HIGH,13)/10+HHV(HIGH,40)/10+HHV(HIGH,20)/10;LL:=LLV(LOW,1)/10*SJ+LLV(LOW,2)/10+LLV(LOW,2)/10+LLV(LOW,4)/10+LLV(LOW,4)/10+LLV(LOW,8)/10+LLV(LOW,8)/10+LLV(LOW,13)/10+LLV(LOW,40)/10+LLV(LOW,20)/10;H1:=IF(HH<REF(HH,1)&&LL<REF(LL,1)&&REF(OPEN,1)>CLOSE&&OPEN>CLOSE&&(HHV(OPEN,0)-CLOSE)>0,REF(HH,2),0);L1:=IF(LL>REF(LL,1)&&HH>REF(HH,1)&&REF(OPEN,1)<CLOSE&&OPEN<CLOSE&&(CLOSE-LLV(OPEN,0))>0,REF(LL,2),0);X:=DATE;X0:=H1,LINETHICK2;X00:=L1;XXX0:=O,LINETHICK2;XXX00:=C;XXX000:=H;XXX0000:=L;H2:=VALUEWHEN(X0>0,X0),LINETHICK2;L2:=VALUEWHEN(X00>0,X00),LINETHICK2;K1:=IF(CLOSE>H2,-3,IF(CLOSE<L2,1,0));K2:=VALUEWHEN(K1<>0,K1);G:=IF(K2=1,H2,L2);G1:=VALUEWHEN(ISLASTBAR,G);DRAWNUMBER(L>0,G1,G1),COLORCYAN;DRAWNUMBER(LL>0,G1,G1),COLORWHITE;X000:=K2,LINETHICK2;TMP:=K2,LINETHICK2;W1:=X000,LINETHICK2;X0000:=OPEN-CLOSE,LINETHICK2;W2:=X0000,LINETHICK2;HT:=IF(OPEN>CLOSE,OPEN,CLOSE),LINETHICK2;LT:=IF(OPEN<CLOSE,OPEN,CLOSE),LINETHICK2;STICKLINE(W1=1,XXX000,HT,0,0),COLORCYAN;STICKLINE(W1=1,XXX0000,LT,0,0),COLORCYAN;STICKLINE(W1=-3,XXX000,HT,0,0),COLORRED;STICKLINE(W1=-3,XXX0000,LT,0,0),COLORRED;STICKLINE(W1>0,XXX0,XXX00,3,1),COLORCYAN;STICKLINE(W1<=0,XXX0,XXX00,3,1),COLORRED;STICKLINE(W2>0&&W1<=0,XXX0,XXX00,3,0),COLORRED;STICKLINE(W2>0&&W1>0,XXX0,XXX00,3,0),COLORCYAN;IF(K2=1,G,DRAWNULL),COLORCYAN;IF(K2=-3,G,DRAWNULL),COLORRED;DRAWTEXT(CROSS(TMP,0),HH,'空'),COLORGREEN;DRAWTEXT(CROSS(0,TMP),LL,'多');N3:=BARSLAST(CROSS(W1>0,0.5)),LINETHICK2;N4:=BARSLAST(CROSS(W1<=0,0.5)),LINETHICK2;HH3:=IF(W1<=0,REF(HHV(H,N4),N3),DRAWNULL),COLORYELLOW;LL3:=IF(W1>0,REF(LLV(L,N3),N4),DRAWNULL),COLORGREEN;B:=CROSS(C,HH3)  OR REF(IF(HH3=DRAWNULL,1,DRAWNULL),1)&&C>HH3;S:=CROSS(LL3,C) OR REF(IF(LL3=DRAWNULL,1,DRAWNULL),1)&&C<LL3;{DRAWICON(B=1,L, 25);DRAWICON(S=1,H, 27);}LC:= REF(CLOSE,1),LINETHICK2;RSI:=SMA(MAX(CLOSE-LC, 0), 6, 1)/SMA(ABS(CLOSE-LC), 6, 1)*100,LINETHICK2;{DRAWTEXT(FILTER(CROSS(RSI,30) AND (CLOSE>REF(HIGH,1.5)),5),LOW-LOW*0.001,'空止赢'),COLORYELLOW;DRAWTEXT(FILTER(CROSS(70,RSI) AND (CLOSE<REF(LOW,1.5)),5),HIGH+HIGH*0.001,'多止赢'),COLORMAGENTA;};YJD:=IF(DATE+19000000>20210410,1,0); DRAWTEXT_FIX(ISLASTBAR=1 AND YJD,0.1,0.2,0,' '),COLORYELLOW;

我这个指标应该是做期货的,我想把他弄成做股票的,期货有开空,那就是把开空的那一部分弄成不开单就好了
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-5-13 09:58 | 显示全部楼层
麻烦把代码重新贴一下,你上面这段代码 一个换行都没有,根本无法整理。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

34

帖子

34

积分

Rank: 1

等级: 新手上路

注册:
2024-4-19
曾用名:
 楼主| 发表于 2024-5-13 10:21 | 显示全部楼层
发布出去说不要发布相似的内容
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2024-5-13 13:46 | 显示全部楼层
[PEL] 复制代码
sj:=if(date+19000000<22300414,1,0);
{+4天上方时间为准}var2:=ema(close,120)*sj;
var3:=(close*sj-var2*sj)*2/(120+1)+var2;
生命线:=var3*sj,linethick2,color0000ff;
xclose2:=ema((open+high+low+close)/4,3);
if((生命线>=xclose2),生命线,drawnull),linethick2,color00ff00;
if((生命线<xclose2),生命线,drawnull),linethick2,color0000ff;
ma3:=ma(c,170);
hh1:=if(h<ref(h,1)&&ref(h,1)<ref(h,2),ref(h,2),0);
ll1:=if(l>ref(l,1)&&ref(l,1)>ref(l,2),ref(l,2),0);
hh2:=valuewhen(hh1>0,hh1);ll2:=valuewhen(ll1>0,ll1);
hh:=hhv(high,1)/10*sj+hhv(high,2)/10+hhv(high,2)/10+hhv(high,4)/10+hhv(high,4)/10+hhv(high,8)/10+hhv(high,8)/10+hhv(high,13)/10+hhv(high,40)/10+hhv(high,20)/10;
ll:=llv(low,1)/10*sj+llv(low,2)/10+llv(low,2)/10+llv(low,4)/10+llv(low,4)/10+llv(low,8)/10+llv(low,8)/10+llv(low,13)/10+llv(low,40)/10+llv(low,20)/10;
h1:=if(hh<ref(hh,1)&&ll<ref(ll,1)&&ref(open,1)>close&&open>close&&(hhv(open,0)-close)>0,ref(hh,2),0);
l1:=if(ll>ref(ll,1)&&hh>ref(hh,1)&&ref(open,1)<close&&open<close&&(close-llv(open,0))>0,ref(ll,2),0);x:=date;
x0:=h1,linethick2;
x00:=l1;
xxx0:=o,linethick2;
xxx00:=c;
xxx000:=h;
xxx0000:=l;
h2:=valuewhen(x0>0,x0),linethick2;
l2:=valuewhen(x00>0,x00),linethick2;
k1:=if(close>h2,-3,if(close<l2,1,0));
k2:=valuewhen(k1<>0,k1);
g:=if(k2=1,h2,l2);
g1:=valuewhen(islastbar,g);
drawnumber(l>0,g1,g1,7),colorcyan;
drawnumber(ll>0,g1,g1,7),colorwhite;
x000:=k2,linethick2;
tmp:=k2,linethick2;
w1:=x000,linethick2;
x0000:=open-close,linethick2;
w2:=x0000,linethick2;
ht:=if(open>close,open,close),linethick2;
lt:=if(open<close,open,close),linethick2;
stickline(w1=1,xxx000,ht,0,0),colorcyan;
stickline(w1=1,xxx0000,lt,0,0),colorcyan;
stickline(w1=-3,xxx000,ht,0,0),colorred;
stickline(w1=-3,xxx0000,lt,0,0),colorred;
stickline(w1>0,xxx0,xxx00,3,1),colorcyan;
stickline(w1<=0,xxx0,xxx00,3,1),colorred;
stickline(w2>0&&w1<=0,xxx0,xxx00,3,0),colorred;
stickline(w2>0&&w1>0,xxx0,xxx00,3,0),colorcyan;
if(k2=1,g,drawnull),colorcyan;
if(k2=-3,g,drawnull),colorred;
drawtext(cross(tmp,0),hh,'空'),colorgreen;
drawtext(cross(0,tmp),ll,'多');n3:=barslast(cross(w1>0,0.5)),linethick2;
n4:=barslast(cross(w1<=0,0.5)),linethick2;
hh3:=if(w1<=0,ref(hhv(h,n4),n3),drawnull),coloryellow;
ll3:=if(w1>0,ref(llv(l,n3),n4),drawnull),colorgreen;
b:=cross(c,hh3)  or ref(if(hh3=drawnull,1,drawnull),1)&&c>hh3;
s:=cross(ll3,c) or ref(if(ll3=drawnull,1,drawnull),1)&&c<ll3;{drawicon(b=1,l, 25);drawicon(s=1,h, 27);}
lc:= ref(close,1),linethick2;
rsi:=sma(max(close-lc, 0), 6, 1)/sma(abs(close-lc), 6, 1)*100,linethick2;{drawtext(filter(cross(rsi,30) and (close>ref(high,1.5)),5),low-low*0.001,'空止赢'),coloryellow;
drawtext(filter(cross(70,rsi) and (close<ref(low,1.5)),5),high+high*0.001,'多止赢'),colormagenta;};
yjd:=if(date+19000000>20210410,1,0); 
drawtextex(islastbar=1 and yjd,1,0.1,0.2,' '),coloryellow;


kd:cross(0,tmp);
ss:=100;//默认下单手数
buy(kd,ss,market);



大致如上,但是你这里没有平仓的逻辑。或者你可以考虑用平空,作为平多的条件.
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

34

帖子

34

积分

Rank: 1

等级: 新手上路

注册:
2024-4-19
曾用名:
 楼主| 发表于 2024-5-13 21:26 | 显示全部楼层
可以啊用平空作为平多条件,那就是你上面发我的这段就可以了吗
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-5-14 08:57 | 显示全部楼层
sell(cross(tmp,0),ss,marketr);

如果是tmp金叉0,那就后面加上这个表示平多
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

34

帖子

34

积分

Rank: 1

等级: 新手上路

注册:
2024-4-19
曾用名:
 楼主| 发表于 2024-5-14 10:20 | 显示全部楼层
能帮我添加进去一下吗?我不会弄怕弄错了
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-5-14 10:20 | 显示全部楼层
就加到最后面就行了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

4

主题

34

帖子

34

积分

Rank: 1

等级: 新手上路

注册:
2024-4-19
曾用名:
 楼主| 发表于 2024-5-14 10:20 | 显示全部楼层
kd:cross(0,tmp);
ss:=100;//默认下单手数
buy(kd,ss,market);
还有这个是下单的手数吗?
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-5-14 10:21 | 显示全部楼层
ss是手数
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-7-28 13:20 , Processed in 0.157948 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表