如何找出數(shù)組中與其他值之差<0.02的次數(shù)最多的那個值? [金字塔]
- 咨詢內(nèi)容:
斜率:=(H-ref(H,1))/ref(H1,1);
前N天的斜率形成一個長度為N的數(shù)組,比如按IF日線,就是0.0060, 0.0042, 0.0048, 0.0018, -0.0022, 0.0066
現(xiàn)在想遍歷數(shù)組中每個值與其它值的差,然后找出差<0.002的次數(shù)最多的那個值。
比如0.0048,就和其中3個數(shù)的差都小于0.002,因此就選出0.0060, 0.0042, 0.0048, 0.0066這4個次數(shù)都為3的值,求得它們的平均數(shù)為當(dāng)前斜率。
而0.0018, -0.0022因?yàn)轵_離其它值太遠(yuǎn),就被拋棄了。
現(xiàn)在有簡單的函數(shù)或算法,來實(shí)現(xiàn)這個目標(biāo)嗎?
- 金字塔客服:
這樣寫 好象不行
斜率:=(H-ref(H,1))/ref(H1,1);
variable:ss=0,kk=0;
variable:A[5]=0;
hh:=斜率;
A[1]:=ref(hh,1);
A[2]:=ref(hh,2);
A[3]:=ref(hh,3);
A[4]:=ref(hh,4);
A[5]:=ref(hh,5);斜率差:=0.002;
if count((hh-A)<=斜率差,6)>=4 then begin
ss:=ss+hh;
kk:=kk+1;
end
if count((A[1]-A)<=斜率差,6)>=4 then begin
ss:=ss+A[1];
kk:=kk+1;
end
if count((A[2]-A)<=斜率差,6)>=4 then begin
ss:=ss+A[2];
kk:=kk+1;
end
if count((A[3]-A)<=斜率差,6)>=4 then begin
ss:=ss+A[3];
kk:=kk+1;
end
if count((A[4]-A)<=斜率差,6)>=4 then begin
ss:=ss+A[4];
kk:=kk+1;
end
if count((A[5]-A)<=斜率差,6)>=4 then begin
ss:=ss+A[5];
kk:=kk+1;
end
當(dāng)前斜率:ss/kk,colorgreen; - 用戶回復(fù):
你的需求過于復(fù)雜, 無法用簡單的函數(shù)實(shí)現(xiàn).
建議你還是多學(xué)習(xí)金字塔的單步跟蹤調(diào)試吧, 邏輯復(fù)雜,殊無法幫你編寫
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 1145508240 進(jìn)行 有償 編寫!(不貴!點(diǎn)擊查看價(jià)格!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容