我自己寫(xiě)了一個(gè)指標(biāo),中間有畫(huà)圖的指標(biāo),? 但是我發(fā)現(xiàn)畫(huà)圖只花一部分?jǐn)?shù)據(jù).后面的數(shù)據(jù)就不畫(huà)了.
請(qǐng)教一下,如何才能直接畫(huà)到K線截止
還請(qǐng)大家指點(diǎn).
======barslast 函數(shù)======
//barslast [test,len]
inputs:?
Test( truefalseseries ),??
Instance( numericsimple ) ;?
?
if RecentOcc( Test, 1000, Instance, 1 )>0 then barslast=RecentOcc( Test, 1000, Instance, 1 )+1
else barslast=0;
===========指標(biāo)主要代碼==========
variables:?
DIF(0), DEA(0), MACDSX(0),
aa(0),bb(0),
HG1(0), HG2(0),
?
//MACD
DIF =XAverage( close, 12 ) - XAverage( close, 26 ) ;
DEA = XAverage(DIF,9);
MACDSX = (DIF-DEA)*2;
?
//
if BARSLAST( MACDSX CROSS OVER 0,1)[BARSLAST( MACDSX CROSS UNDER 0,1)]-BARSLAST( MACDSX CROSS UNDER 0,1)>0 then aa=BARSLAST( MACDSX CROSS OVER 0,1)[BARSLAST( MACDSX CROSS UNDER 0,1)]-BARSLAST( MACDSX CROSS UNDER 0,1)
else aa=0;
if BARSLAST( MACDSX CROSS OVER 0,1)[BARSLAST( MACDSX CROSS UNDER 0,2)]-BARSLAST( MACDSX CROSS UNDER 0,2)>0 then bb=BARSLAST( MACDSX CROSS OVER 0,1)[BARSLAST( MACDSX CROSS UNDER 0,2)]-BARSLAST( MACDSX CROSS UNDER 0,2)
else bb=0;
?
HG1=NthHighest(1,H,aa)[BARSLAST( MACDSX CROSS UNDER 0,1)];
HG2=NthHighest(1,H,bb)[BARSLAST( MACDSX CROSS UNDER 0,2)];
?
if HG1<HG2 and MACDSX<0 then PlotPaintBar(High,Low,Open,Close,"",Blue);?
?
?
=================圖形表現(xiàn)=========
?
第一、因?yàn)榇a中繪制K線的語(yǔ)句是通過(guò)IF條件進(jìn)行判斷的,所以當(dāng)條件不滿(mǎn)足時(shí),圖表上不會(huì)繪制K線,而當(dāng)條件滿(mǎn)足時(shí),在圖表上繪制K線;而這是正常情況,所以您的問(wèn)題”如何才能直接畫(huà)到K線截止“,這個(gè)問(wèn)題太模糊了....
第二、您的函數(shù)barslast是數(shù)值類(lèi)型的函數(shù)還是數(shù)列類(lèi)型的函數(shù),因?yàn)檫@兩個(gè)類(lèi)型的函數(shù)在效果上會(huì)不一樣。
第三、您的代碼編譯上沒(méi)有問(wèn)題,但是若是有問(wèn)題,可能是您的代碼邏輯與您實(shí)際預(yù)期的邏輯不一致;如果是代碼的邏輯沒(méi)有反應(yīng)您的真實(shí)邏輯,那么您需要注釋一下您的代碼每個(gè)地方您預(yù)期的執(zhí)行邏輯,這樣方便幫您找到問(wèn)題。
?
第一、因?yàn)榇a中繪制K線的語(yǔ)句是通過(guò)IF條件進(jìn)行判斷的,所以當(dāng)條件不滿(mǎn)足時(shí),圖表上不會(huì)繪制K線,而當(dāng)條件滿(mǎn)足時(shí),在圖表上繪制K線;而這是正常情況,所以您的問(wèn)題”如何才能直接畫(huà)到K線截止“,這個(gè)問(wèn)題太模糊了....
第二、您的函數(shù)barslast是數(shù)值類(lèi)型的函數(shù)還是數(shù)列類(lèi)型的函數(shù),因?yàn)檫@兩個(gè)類(lèi)型的函數(shù)在效果上會(huì)不一樣。
第三、您的代碼編譯上沒(méi)有問(wèn)題,但是若是有問(wèn)題,可能是您的代碼邏輯與您實(shí)際預(yù)期的邏輯不一致;如果是代碼的邏輯沒(méi)有反應(yīng)您的真實(shí)邏輯,那么您需要注釋一下您的代碼每個(gè)地方您預(yù)期的執(zhí)行邏輯,這樣方便幫您找到問(wèn)題。
?
==========================
你好,我仔細(xì)查看了下我的代碼!
1.IF的判斷語(yǔ)句是絕對(duì)沒(méi)有問(wèn)題的,后期我都能查看到有相同符合條件的K線\
2.BARSLAST? 使用的是數(shù)值函數(shù),? 我嘗試使用數(shù)列函數(shù),指標(biāo)無(wú)法使用.
3.使用PRINT語(yǔ)氣尋找問(wèn)題,發(fā)現(xiàn)我的? HG1 HG2值? 只能取到15年8月21日的值,后期無(wú)法運(yùn)算的到數(shù)值.
運(yùn)算的K線總數(shù)為588根K線??
4.我嘗試將BARSLAST? 函數(shù)中 先前運(yùn)算的值從1000改為2000無(wú)法解決上述問(wèn)題.? --基本排除和BARSLAST函數(shù)有關(guān)
5.在指標(biāo)參數(shù)中 將? 指標(biāo)運(yùn)算參考的最大BARS數(shù)量? ?從自動(dòng)檢測(cè)? 調(diào)整為2000? 指標(biāo)一直在計(jì)算當(dāng)中.
?
通過(guò)上述辦法都沒(méi)有解決問(wèn)題.
還請(qǐng)版主能夠測(cè)試下代碼,幫助解決下問(wèn)題
?
您需要提供一下您的指標(biāo)的邏輯,代碼每部分想達(dá)到的目的
?
您需要提供一下您的指標(biāo)的邏輯,代碼每部分想達(dá)到的目的