數(shù)組數(shù)據(jù)越界問題 [金字塔]
- 咨詢內(nèi)容:
請教版主,如下一段程序,目的是一分鐘K線圖上,先建立270個(gè)元素K線序列數(shù)據(jù)的數(shù)組,每天第一根K線時(shí)對270個(gè)元素?cái)?shù)組清零,后根據(jù)條件尋找高低拐點(diǎn),并將各拐點(diǎn)相應(yīng)的最高最低價(jià)格,儲(chǔ)存在相應(yīng)K線(NN)位置序號數(shù)組變量中,其他不是拐點(diǎn)的數(shù)組變量清零。查看Zigzag[1]~Zigzag[270],可以看到每個(gè)拐點(diǎn)的高低點(diǎn)數(shù)據(jù),是拐點(diǎn)就有數(shù)據(jù),不是拐點(diǎn)數(shù)據(jù)為零,我想將各波峰波谷高低點(diǎn)數(shù)據(jù)畫線連接起來,但最后一行命令POLYLINE(Zigzag[NN]<>0,Zigzag[NN],COLORRED,1,VTSOLID),總是報(bào)數(shù)組越界錯(cuò)誤,對于數(shù)組越界問題,金字塔系統(tǒng)解釋不是很到位,如什么情況數(shù)組報(bào)越界錯(cuò)誤,就一個(gè)簡單的“數(shù)組越界"報(bào)錯(cuò),很難找到真正原因。肯請管理員,幫忙提示問題到達(dá)在哪兒?謝謝!
variable:Zigzag[270]=0;
NN:=barslast(day<>ref(day,1))+1;
If NN=1 Then BEGIN
For i=1 to 270 do Zigzag[i]:=0;
whatlookfor:=0 ;LASTLOWSET:=NN;
LASTLOW:=OPEN;
LASTHIGHSET:=NN;
LASTHIGH:=Open;
.......
END
If whatlookfor=0 Then Begin //當(dāng)日首K線為起點(diǎn),尋找第一個(gè)拐點(diǎn)
.....
ENDIf whatlookfor=1 Then Begin //最后K線是向下拐點(diǎn),尋找高點(diǎn)
......whatlookfor:=-1;
Zigzag[LASTLOWSET]:=LASTLOW;
ENDIf whatlookfor=-1 Then Begin //最后K線是向上拐點(diǎn),尋找低點(diǎn)
.....whatlookfor:=1;
Zigzag[LASTHIGHSET]:=LASTHIGH;END
POLYLINE(Zigzag[NN]<>0,Zigzag[NN],COLORRED,1,VTSOLID); - 金字塔客服:
如今天上午股指1分鐘的拐點(diǎn)記錄,1~135是K線編號,價(jià)格就是拐點(diǎn)價(jià)格:
2013/06/19 12:20:32 拐點(diǎn)位置:1價(jià)格:2404.0
2013/06/19 12:20:32 拐點(diǎn)位置:2價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:3價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:4價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:5價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:6價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:7價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:8價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:9價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:10價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:11價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:12價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:13價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:14價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:15價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:16價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:17價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:18價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:19價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:20價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:21價(jià)格:2381.0
2013/06/19 12:20:32 拐點(diǎn)位置:22價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:23價(jià)格:2391.2
2013/06/19 12:20:32 拐點(diǎn)位置:24價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:25價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:26價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:27價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:28價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:29價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:30價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:31價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:32價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:33價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:34價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:35價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:36價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:37價(jià)格:2376.8
2013/06/19 12:20:32 拐點(diǎn)位置:38價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:39價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:40價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:41價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:42價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:43價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:44價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:45價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:46價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:47價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:48價(jià)格:2388.0
2013/06/19 12:20:32 拐點(diǎn)位置:49價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:50價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:51價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:52價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:53價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:54價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:55價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:56價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:57價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:58價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:59價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:60價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:61價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:62價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:63價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:64價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:65價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:66價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:67價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:68價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:69價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:70價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:71價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:72價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:73價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:74價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:75價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:76價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:77價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:78價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:79價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:80價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:81價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:82價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:83價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:84價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:85價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:86價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:87價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:88價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:89價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:90價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:91價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:92價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:93價(jià)格:2352.2
2013/06/19 12:20:32 拐點(diǎn)位置:94價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:95價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:96價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:97價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:98價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:99價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:100價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:101價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:102價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:103價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:104價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:105價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:106價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:107價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:108價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:109價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:110價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:111價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:112價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:113價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:114價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:115價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:116價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:117價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:118價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:119價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:120價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:121價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:122價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:123價(jià)格:2384.0
2013/06/19 12:20:32 拐點(diǎn)位置:124價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:125價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:126價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:127價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:128價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:129價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:130價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:131價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:132價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:133價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:134價(jià)格:0.0
2013/06/19 12:20:32 拐點(diǎn)位置:135價(jià)格:0.0 - 用戶回復(fù):
省略號的東西能寫一下嗎?
- 網(wǎng)友回復(fù):
Input:ExtDepth(5,5,25,1),ExtDeviation(5,3,10,1),ExtBackStep(3,3,10,1);
variable:Zigzag[270]=0,NUM=0,whatlookfor:=0,LastPrice1:=0,LastPrice2:=0,LastSet1:=0,LastSet2:=0;
WARNING_DISABLE:4;
NN:=barslast(day<>ref(day,1))+1;
If NN=1 Then BEGIN
For i=1 to 270 do Zigzag[i]:=0;
whatlookfor:=0;
LastPrice1:=Open;
LastPrice2:=0;
LastSet1:=1;
LastSet2:=0;
NUM:=1;
Zigzag[1]:=Open;
END
REFCLOSE:=REF(CLOSE,1);
LASTHIGH:=HHV(HIGH,NN-LastSet1);
LASTLOW:=LLV(LOW,NN-LastSet1);
LASTHIGHSET:=NN-HHVBARS(HIGH,NN-LastSet1);
LASTLOWSET:=NN-LLVBARS(LOW,NN-LastSet1);
If Islastbar<>1 AND whatlookfor=0 Then Begin //確定了起點(diǎn),尋找第一個(gè)拐點(diǎn)
If LastPrice1<>0 AND LastPrice2=0 Then BEGIN
IF REFCLOSE>LastPrice1 AND (NN-LastSet1)>=ExtDepth AND (REFCLOSE-LastPrice1)>=ExtDeviation Then BEGIN //先出現(xiàn)高點(diǎn)
LastPrice2:=REFCLOSE;
LastSet2:=NN;
whatlookfor:=-1;
GOTO ENDEXIT@;
END
IF REFCLOSE<LastPrice1 AND (NN-LastSet1)>=ExtDepth AND (LastPrice1-REFCLOSE)>=ExtDeviation Then BEGIN //先出現(xiàn)低點(diǎn)
LastPrice2:=REFCLOSE;
LastSet2:=NN;
whatlookfor:=1;
GOTO ENDEXIT@;
END
END
ENDIf Islastbar<>1 AND whatlookfor=1 Then Begin //最后是向下拐點(diǎn),尋找高點(diǎn)
If LastPrice1<>0 AND LastPrice2<>0 Then BEGIN
If REFCLOSE<LastPrice2 Then BEGIN
LastPrice2:=REFCLOSE;
LastSet2:=NN;
END
IF REFCLOSE>LastPrice2 AND (NN-LastSet2)>=ExtDepth AND (REFCLOSE-LastPrice2)>=ExtDeviation Then BEGIN // 找到高點(diǎn)
NUM:=NUM+1;
whatlookfor:=-1;
Zigzag[LASTLOWSET]:=LASTLOW;
LastPrice1:=LastPrice2;
LastSet1:=LastSet2;
LastPrice2:=REFCLOSE;
LastSet2:=NN;
END
END
ENDIf Islastbar<>1 AND whatlookfor=-1 Then Begin //最后是向上拐點(diǎn),尋找低點(diǎn)
If LastPrice1<>0 AND LastPrice2<>0 Then BEGIN
If REFCLOSE>LastPrice2 Then BEGIN
LastPrice2:=REFCLOSE;
LastSet2:=NN;
END
IF REFCLOSE<LastPrice2 AND (NN-LastSet2)>=ExtDepth AND (LastPrice2-REFCLOSE)>=ExtDeviation Then BEGIN // 找到低點(diǎn)
NUM:=NUM+1;
whatlookfor:=1;
Zigzag[LASTHIGHSET]:=LASTHIGH;
LastPrice1:=LastPrice2;
LastSet1:=LastSet2;
LastPrice2:=REFCLOSE;
LastSet2:=NN;
END
END
ENDENDEXIT@ ;
POLYLINE(Zigzag[NN]<>0,Zigzag[NN],COLORRED,1,VTSOLID);
- 網(wǎng)友回復(fù):
上面是全部代碼,按MT4軟件和金字塔的Zig函數(shù)的原理設(shè)計(jì),已經(jīng)找出高低拐點(diǎn)的價(jià)格和位置,但不知道怎樣畫出來。這樣設(shè)計(jì),除掉了未來函數(shù)的罪名,是順向推導(dǎo)出已經(jīng)出現(xiàn)的高低拐點(diǎn),希望能把它設(shè)計(jì)完成,也可以給使用金字塔的用戶共享非未來函數(shù)類的ZIG函數(shù)。
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 1145508240 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價(jià)格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容