以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- [求助]请帮忙将飞狐公式修改成完整的金字塔的,拜托谢谢了! (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=65636) |
-- 作者:云潇逸士 -- 发布时间:2014/5/29 22:32:06 -- [求助]请帮忙将飞狐公式修改成完整的金字塔的,拜托谢谢了! A1:=REF(HIGH,2)=HHV(HIGH,2*2+1); B1:=FILTER(A1,2); C1:=BACKSET(B1,2+1); D1:=FILTER(C1,2);{高点} A2:=REF(LOW,2)=LLV(LOW,2*2+1); B2:=FILTER(A2,2); C2:=BACKSET(B2,2+1); D2:=FILTER(C2,2);{低点} E1:=(REF(LLV(LOW,2*2),1)+REF(HHV(HIGH,2*2),1))/2; E2:=(HIGH+LOW)/2;{高低点出现在同一K线上时可作取舍} H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(CLOSE)=1; L1:=(D2 AND NOT(D1 AND E1<E2)); H2:=D1 AND NOT(D2 AND E1>=E2); X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,LOW,10000),X1)); G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1);{过滤后低点} L2:=LD OR ISLASTBAR OR BARSCOUNT(CLOSE)=1; X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,HIGH,0),X2)); G2:=F2>REF(F2,1); I2:=BACKSET(G2,2); HD:=I2>REF(I2,1);{过滤后高点} //DRAWLINE(LD,LOW,HD,HIGH,0),COLOR0000cc,LINEDOT,LINETHICK1; //DRAWLINE(HD,HIGH,LD,LOW,0),COLOR0000cc,,LINEDOT,LINETHICK1; //J1:=BACKSET(ISLASTBAR,MIN(BARSLAST(HD),BARSLAST(LD))+1); //J2:=J1>REF(J1,1); //DRAWLINE(J2,IF(HD,HIGH,LOW),ISLASTBAR,IF(BARSLAST(HD)>BARSLAST(LD),HIGH,LOW),0),LINEDOT,COLOR0000cc,LINETHICK1; {以上语句为新结构波浪} A3:=HIGH<REF(HIGH,REF(BARSLAST(HD),1)+1); B3:=REF(HIGH,REF(BARSLAST(HD),1)+1); D3:=A3 AND B3 AND HD; E3:=BACKSET(D3,REF(BARSLAST(HD),1)+2); HH:=E3>REF(E3,1);{找出全部长期高点} A4:=LOW>REF(LOW,REF(BARSLAST(LD),1)+1); B4:=REF(LOW,REF(BARSLAST(LD),1)+1); D4:=A4 AND B4 AND LD; E4:=BACKSET(D4,REF(BARSLAST(LD),1)+2); LL:=E4>REF(E4,1);{找出全部长期低点} DRAWNUMBER(hh,HIGH,IF(hd,HIGH,0),2),ALIGN2; DRAWNUMBER(ll,LOW,IF(ld,LOW,0),2),ALIGN2; //DRAWICON(Hh,HIGH,10),ALIGN1; //DRAWICON(ll,LOW,12),ALIGN1; L低点数:=sum(LL,0); p:=datacount; LDI:=L低点数[p]-L低点数+1; LID:=(LDI<REF(LDI,1))*LDI; LJD1:=ref(L,BARSLAST(LDI[p]=LID)); LJD2:=ref(L,BARSLAST(1+LDI[p]=LID)); LJD3:=ref(L,BARSLAST(2+LDI[p]=LID)); LJD4:=ref(L,BARSLAST(3+LDI[p]=LID)); LJD5:=ref(L,BARSLAST(4+LDI[p]=LID)); LJD6:=ref(L,BARSLAST(5+LDI[p]=LID)); LJD7:=ref(L,BARSLAST(6+LDI[p]=LID)); LJD8:=ref(L,BARSLAST(7+LDI[p]=LID)); LJD9:=ref(L,BARSLAST(8+LDI[p]=LID)); LJD10:=ref(L,BARSLAST(9+LDI[p]=LID)); LJD11:=ref(L,BARSLAST(10+LDI[p]=LID)); LJD12:=ref(L,BARSLAST(11+LDI[p]=LID)); DRAWLINE(1+LDI[p]=LID,L,LDI[p]=LID and LJD2<LJD1,L,1),Colorcc33cc; DRAWLINE(2+LDI[p]=LID,L,1+LDI[p]=LID and LJD3<LJD2,L,1),Colorcc33cc; DRAWLINE(3+LDI[p]=LID,L,2+LDI[p]=LID and LJD4<LJD3,L,1),Colorcc33cc; DRAWLINE(4+LDI[p]=LID,L,3+LDI[p]=LID and LJD5<LJD4,L,1),Colorcc33cc,POINTDOT; DRAWLINE(5+LDI[p]=LID,L,4+LDI[p]=LID and LJD6<LJD5,L,1),Colorcc33cc,POINTDOT; DRAWLINE(6+LDI[p]=LID,L,5+LDI[p]=LID and LJD7<LJD6,L,1),Colorcc33cc,POINTDOT; DRAWLINE(7+LDI[p]=LID,L,6+LDI[p]=LID and LJD8<LJD7,L,1),Colorcc33cc,POINTDOT; DRAWLINE(8+LDI[p]=LID,L,7+LDI[p]=LID and LJD9<LJD9,L,1),Colorcc33cc,POINTDOT; DRAWLINE(9+LDI[p]=LID,L,8+LDI[p]=LID and LJD10<LJD9,L,1),Colorcc33cc,POINTDOT; DRAWLINE(10+LDI[p]=LID,L,9+LDI[p]=LID and LJD11<LJD10,L,1),Colorcc33cc,POINTDOT; DRAWLINE(2+LDI[p]=LID,L,LDI[p]=LID and LJD3<LJD2 and LJD2>LJD1 and LJD1>LJD3,L,1),Colorcc33cc; DRAWLINE(3+LDI[p]=LID,L,1+LDI[p]=LID and LJD4<LJD3 and LJD3>LJD2 and LJD2>LJD4,L,1),Colorcc33cc; DRAWLINE(4+LDI[p]=LID,L,2+LDI[p]=LID and LJD5<LJD4 and LJD4>LJD3 and LJD3>LJD5,L,1),Colorcc33cc; DRAWLINE(5+LDI[p]=LID,L,3+LDI[p]=LID and LJD6<LJD5 and LJD5>LJD4 and LJD4>LJD6,L,1),Colorcc33cc,POINTDOT; DRAWLINE(6+LDI[p]=LID,L,4+LDI[p]=LID and LJD7<LJD6 and LJD6>LJD5 and LJD5>LJD7,L,1),Colorcc33cc,POINTDOT; DRAWLINE(7+LDI[p]=LID,L,5+LDI[p]=LID and LJD8<LJD7 and LJD7>LJD6 and LJD6>LJD8,L,1),Colorcc33cc,POINTDOT; DRAWLINE(8+LDI[p]=LID,L,6+LDI[p]=LID and LJD9<LJD8 and LJD8>LJD7 and LJD7>LJD9,L,1),Colorcc33cc,POINTDOT; DRAWLINE(9+LDI[p]=LID,L,7+LDI[p]=LID and LJD10<LJD9 and LJD9>LJD8 and LJD8>LJD10,L,1),Colorcc33cc,POINTDOT; DRAWLINE(10+LDI[p]=LID,L,8+LDI[p]=LID and LJD11<LJD10 and LJD10>LJD9 and LJD9>LJD11,L,1),Colorcc33cc,POINTDOT; L高点数:=sum(HH,0); LGI:=L高点数[p]-L高点数+1; LIG:=(LGI<REF(LGI,1))*LGI; LJG1:=ref(H,BARSLAST(LGI[p]=LIG)); LJG2:=ref(H,BARSLAST(1+LGI[p]=LIG)); LJG3:=ref(H,BARSLAST(2+LGI[p]=LIG)); LJG4:=ref(H,BARSLAST(3+LGI[p]=LIG)); LJG5:=ref(H,BARSLAST(4+LGI[p]=LIG)); LJG6:=ref(H,BARSLAST(5+LGI[p]=LIG)); LJG7:=ref(H,BARSLAST(6+LGI[p]=LIG)); LJG8:=ref(H,BARSLAST(7+LGI[p]=LIG)); LJG9:=ref(H,BARSLAST(8+LGI[p]=LIG)); LJG10:=ref(H,BARSLAST(9+LGI[p]=LIG)); LJG11:=ref(H,BARSLAST(10+LGI[p]=LIG)); LJG12:=ref(H,BARSLAST(11+LGI[p]=LIG)); DRAWLINE(1+LGI[p]=LIG,H,LGI[p]=LIG and LJG2>LJG1,H,1),Colorcc33cc; DRAWLINE(2+LGI[p]=LIG,H,1+LGI[p]=LIG and LJG3>LJG2,H,1),Colorcc33cc; DRAWLINE(3+LGI[p]=LIG,H,2+LGI[p]=LIG and LJG4>LJG3,H,1),Colorcc33cc; DRAWLINE(4+LGI[p]=LIG,H,3+LGI[p]=LIG and LJG5>LJG4,H,1),Colorcc33cc,POINTDOT; DRAWLINE(5+LGI[p]=LIG,H,4+LGI[p]=LIG and LJG6>LJG5,H,1),Colorcc33cc,POINTDOT; DRAWLINE(6+LGI[p]=LIG,H,5+LGI[p]=LIG and LJG7>LJG6,H,1),Colorcc33cc,POINTDOT; DRAWLINE(7+LGI[p]=LIG,H,6+LGI[p]=LIG and LJG8>LJG7,H,1),Colorcc33cc,POINTDOT; DRAWLINE(8+LGI[p]=LIG,H,7+LGI[p]=LIG and LJG9>LJG9,H,1),Colorcc33cc,POINTDOT; DRAWLINE(9+LGI[p]=LIG,H,8+LGI[p]=LIG and LJG10>LJG9,H,1),Colorcc33cc,POINTDOT; DRAWLINE(10+LGI[p]=LIG,H,9+LGI[p]=LIG and LJG11>LJG10,H,1),Colorcc33cc,POINTDOT; DRAWLINE(2+LGI[p]=LIG,H,LGI[p]=LIG and LJG3>LJG2 and LJG2<LJG1 and LJG1<LJG3,H,1),Colorcc33cc; DRAWLINE(3+LGI[p]=LIG,H,1+LGI[p]=LIG and LJG4>LJG3 and LJG3<LJG2 and LJG2<LJG4,H,1),Colorcc33cc; DRAWLINE(4+LGI[p]=LIG,H,2+LGI[p]=LIG and LJG5>LJG4 and LJG4<LJG3 and LJG3<LJG5,H,1),Colorcc33cc; DRAWLINE(5+LGI[p]=LIG,H,3+LGI[p]=LIG and LJG6>LJG5 and LJG5<LJG4 and LJG4<LJG6,H,1),Colorcc33cc,POINTDOT; DRAWLINE(6+LGI[p]=LIG,H,4+LGI[p]=LIG and LJG7>LJG6 and LJG6<LJG5 and LJG5<LJG7,H,1),Colorcc33cc,POINTDOT; DRAWLINE(7+LGI[p]=LIG,H,5+LGI[p]=LIG and LJG8>LJG7 and LJG7<LJG6 and LJG6<LJG8,H,1),Colorcc33cc,POINTDOT; DRAWLINE(8+LGI[p]=LIG,H,6+LGI[p]=LIG and LJG9>LJG8 and LJG8<LJG7 and LJG7<LJG9,H,1),Colorcc33cc,POINTDOT; DRAWLINE(9+LGI[p]=LIG,H,7+LGI[p]=LIG and LJG10>LJG9 and LJG9<LJG8 and LJG8<LJG10,H,1),Colorcc33cc,POINTDOT; DRAWLINE(10+LGI[p]=LIG,H,8+LGI[p]=LIG and LJG11>LJG10 and LJG10<LJG9 and LJG9<LJG11,H,1),Colorcc33cc,POINTDOT; {以下是两条趋势线原码} 低点数:=sum(LD,0); di:=低点数[p]-低点数+1; id:=(di<REF(di,1))*di; jd1:=ref(L,BARSLAST(di[p]=id)); jd2:=ref(L,BARSLAST(1+di[p]=id)); jd3:=ref(L,BARSLAST(2+di[p]=id)); jd4:=ref(L,BARSLAST(3+di[p]=id)); jd5:=ref(L,BARSLAST(4+di[p]=id)); jd6:=ref(L,BARSLAST(5+di[p]=id)); jd7:=ref(L,BARSLAST(6+di[p]=id)); jd8:=ref(L,BARSLAST(7+di[p]=id)); jd9:=ref(L,BARSLAST(8+di[p]=id)); jd10:=ref(L,BARSLAST(9+di[p]=id)); jd11:=ref(L,BARSLAST(10+di[p]=id)); jd12:=ref(L,BARSLAST(11+di[p]=id)); DRAWLINE(1+di[p]=id,L,di[p]=id and jd2<jd1,L,1),Color5E7159,POINTDOT; DRAWLINE(2+di[p]=id,L,1+di[p]=id and jd3<jd2,L,1),Color5E7159,POINTDOT; DRAWLINE(3+di[p]=id,L,2+di[p]=id and jd4<jd3,L,1),Color5E7159,POINTDOT; DRAWLINE(4+di[p]=id,L,3+di[p]=id and jd5<jd4,L,1),Color5E7159,POINTDOT; DRAWLINE(5+di[p]=id,L,4+di[p]=id and jd6<jd5,L,1),Color5E7159,POINTDOT; DRAWLINE(2+di[p]=id,L,di[p]=id and jd3<jd2 and jd2>jd1 and jd1>jd3,L,1),Color5E7159,POINTDOT; DRAWLINE(3+di[p]=id,L,1+di[p]=id and jd4<jd3 and jd3>jd2 and jd2>jd4,L,1),Color5E7159,POINTDOT; DRAWLINE(4+di[p]=id,L,2+di[p]=id and jd5<jd4 and jd4>jd3 and jd3>jd5,L,1),Color5E7159,POINTDOT; DRAWLINE(5+di[p]=id,L,3+di[p]=id and jd6<jd5 and jd5>jd4 and jd4>jd6,L,1),Color5E7159,POINTDOT; DRAWLINE(6+di[p]=id,L,4+di[p]=id and jd7<jd6 and jd6>jd5 and jd5>jd7,L,1),Color5E7159,POINTDOT; 高点数:=sum(HD,0); gi:=高点数[p]-高点数+1; ig:=(gi<REF(gi,1))*gi; jg1:=ref(H,BARSLAST(gi[p]=ig)); jg2:=ref(H,BARSLAST(1+gi[p]=ig)); jg3:=ref(H,BARSLAST(2+gi[p]=ig)); jg4:=ref(H,BARSLAST(3+gi[p]=ig)); jg5:=ref(H,BARSLAST(4+gi[p]=ig)); jg6:=ref(H,BARSLAST(5+gi[p]=ig)); jg7:=ref(H,BARSLAST(6+gi[p]=ig)); jg8:=ref(H,BARSLAST(7+gi[p]=ig)); jg9:=ref(H,BARSLAST(8+gi[p]=ig)); jg10:=ref(H,BARSLAST(9+gi[p]=ig)); jg11:=ref(H,BARSLAST(10+gi[p]=ig)); DRAWLINE(1+gi[p]=ig,H,gi[p]=ig and jg2>jg1,H,1),Color5E7159,POINTDOT; DRAWLINE(2+gi[p]=ig,H,1+gi[p]=ig and jg3>jg2,H,1),Color5E7159,POINTDOT; DRAWLINE(3+gi[p]=ig,H,2+gi[p]=ig and jg4>jg3,H,1),Color5E7159,POINTDOT; DRAWLINE(4+gi[p]=ig,H,3+gi[p]=ig and jg5>jg4,H,1),Color5E7159,POINTDOT; DRAWLINE(5+gi[p]=ig,H,4+gi[p]=ig and jg6>jg5,H,1),Color5E7159,POINTDOT; DRAWLINE(2+gi[p]=ig,H,gi[p]=ig and jg3>jg2 and jg2<jg1 and jg1<jg3,H,1),Color5E7159,POINTDOT; DRAWLINE(3+gi[p]=ig,H,1+gi[p]=ig and jg4>jg3 and jg3<jg2 and jg2<jg4,H,1),Color5E7159,POINTDOT; DRAWLINE(4+gi[p]=ig,H,2+gi[p]=ig and jg5>jg4 and jg4<jg3 and jg3<jg5,H,1),Color5E7159,POINTDOT; DRAWLINE(5+gi[p]=ig,H,3+gi[p]=ig and jg6>jg5 and jg5<jg4 and jg4<jg6,H,1),Color5E7159,POINTDOT; DRAWLINE(6+gi[p]=ig,H,4+gi[p]=ig and jg7>jg6 and jg6<jg5 and jg5<jg7,H,1),Color5E7159,POINTDOT; EXPLAIN(HD OR LD OR BARSTATUS=2,STKNAME); EXPLAINEX(HD or LD OR BARSTATUS=2,\'日期=\',DATE-1000000+20000000,0,0); EXPLAINEX(HD,\'区间高点=\',HIGH,2,0); EXPLAINEX(LD,\'区间低点=\',LOW,2,0); EXPLAINEX(HD,\'已经上涨(天)=\',BARSLAST(LD ),0,0); EXPLAINEX(LD,\'已经下跌(天)=\',BARSLAST(HD ),0,0); EXPLAINEX(HD,\'最大涨幅(%)=\',(HIGH-TROUGH(4,7,1))/TROUGH(4,7,1)*100,2,0); EXPLAINEX(LD,\'最大跌幅(%)=\',(PEAK(4,7,1)-LOW)/PEAK(4,7,1)*100*(-1),2,0); EXPLAINEX(HD,\'上涨区间金额(亿元)=\',SUM(AMOUNT,BARSLAST(LD))/100000000,2,0); EXPLAINEX(LD,\'下跌区间金额(亿元)=\',SUM(AMOUNT,BARSLAST(HD))/100000000,2,0); EXPLAINEX(HD,\'区间换手(%)=\',SUM( VOL,BARSLAST(LD))/CAPITAL*100,2,0); EXPLAINEX(LD,\'区间换手(%)=\',SUM( VOL,BARSLAST(HD))/CAPITAL*100,2,0); EXPLAINEX(LD,\'区间平均价=\',SUM(AMOUNT,BARSLAST(HD))/SUM( VOL,BARSLAST(HD))/100,2,0); EXPLAINEX(HD,\'区间平均价=\',SUM(AMOUNT,BARSLAST(LD))/SUM( VOL,BARSLAST(LD))/100,2,0); { EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'区间高点=\',HHV(HIGH,3),2,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'区间低点=\',LLV(LOW,3),2,0); EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'已经上涨(天)=\',BARSLAST(LD ),0,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'已经下跌(天)=\',BARSLAST(HD ),0,0); EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'最大涨幅(%)=\',(HHV(HIGH,3)-TROUGH(4,7,1))/TROUGH(4,7,1)*100,2,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'最大跌幅(%)=\',(PEAK(4,7,1)-LLV(LOW,3))/PEAK(4,7,1)*100*(-1),2,0); EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'实际涨幅(%)=\',(CLOSE-TROUGH(4,7,1))/TROUGH(4,7,1)*100,2,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'实际跌幅(%)=\',(PEAK(4,7,1)-CLOSE)/PEAK(4,7,1)*100*(-1),2,0); EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'上涨区间金额(亿元)=\',SUM(AMOUNT,BARSLAST(LD))/100000000,2,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'下跌区间金额(亿元)=\',SUM(AMOUNT,BARSLAST(HD))/100000000,2,0); EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'区间换手(%)=\',SUM( VOL,BARSLAST(一低))/CAPITAL*100,2,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'区间换手(%)=\',SUM( VOL,BARSLAST(一高))/CAPITAL*100,2,0); EXPLAINEX(CLOSE<一高 AND BARSTATUS=2,\'区间平均价=\',SUM(AMOUNT,BARSLAST(一高))/SUM( VOL,BARSLAST(HD))/100,2,0) EXPLAINEX(CLOSE>一低 AND BARSTATUS=2,\'区间平均价=\',SUM(AMOUNT,BARSLAST(一低))/SUM( VOL,BARSLAST(LD))/100,2,0); |
-- 作者:jinzhe -- 发布时间:2014/5/30 9:15:18 -- A1:=REF(HIGH,2)=HHV(HIGH,2*2+1); B1:=FILTER(A1,2); C1:=BACKSET(B1,2+1); D1:=FILTER(C1,2);{高点}
|