咨詢內(nèi)容:
哪位老師,回答我一個(gè)技術(shù)指標(biāo)系統(tǒng)函數(shù)的問題
博易云上自編指標(biāo)調(diào)用系統(tǒng)數(shù)據(jù)滿足條件是信號一直存在并直到該條件不滿足,這樣導(dǎo)致博易云軟件計(jì)算該品種上市以來的K線所有數(shù)據(jù),系統(tǒng)運(yùn)行緩慢導(dǎo)致軟件崩潰。
實(shí)際上尤其是日內(nèi)幾分鐘K線數(shù)據(jù),也就是維持信號最多也就需要三個(gè)交易日內(nèi)的幾分鐘的K線的數(shù)據(jù)的維持信號,,請問如何過濾掉三個(gè)交易日之前的K線(通常30分鐘以下所有分鐘的K線數(shù)據(jù))維持信號呢?或者只計(jì)算和顯示屏幕顯示K線的數(shù)據(jù)的維持信號呢?
舉個(gè)例子:
多頭信號:=ma(c,3)>=ma(c,5) and ma(c,5)>=ma(c,8);
空頭信號:=ma(c,3)<=ma(c,5) and ma(c,5)<=ma(c,8);
draw(多頭信號,ma(c,3),1);
draw(空頭信號,ma(c,8),2);
這樣就還計(jì)算和顯示所有周期K線對應(yīng)的所有數(shù)據(jù),計(jì)算量大,非常容易致使系統(tǒng)崩潰。
我若是只想顯示三個(gè)交易日之內(nèi)的數(shù)據(jù)的信號或者屏幕顯示K線對應(yīng)的數(shù)據(jù)的維持信號,應(yīng)該怎么做??
?
指標(biāo)yyyPST源碼如下:
OI:AMOUNT,LINETHICK2;
YYYPOSITION:SMA(OI,99,1),POINTDOT;
EMA3:=EMA(CLOSE,3);
EMA5:=EMA(CLOSE,5);
EMA8:=EMA(CLOSE,8);
EMA13:=EMA(CLOSE,13);
DIFF0:=EMA(CLOSE,21)-EMA(CLOSE,55);
DEA0:=EMA(DIFF0,13);
LONGSIGN := DIFF0 >=DEA0;
SHORTSIGN :=DIFF0 <=DEA0;
DUOSIGN := EMA3>=EMA5 AND EMA5>=EMA8;
KONGSIGN := EMA3<=EMA5 AND EMA5<=EMA8;
BULLSIGNAL:=DUOSIGN AND LONGSIGN;
BEARSIGNAL:=KONGSIGN AND SHORTSIGN;
DRAWICON(BULLSIGNAL,YYYPOSITION,4),ALIGN1;
DRAWICON(BEARSIGNAL,YYYPOSITION,5),ALIGN1;
{
ENTERLONG:TFILTER(BULLSIGNAL,BEARSIGNAL,4);
ENTERSHORT:TFILTER(BEARSIGNAL,BULLSIGNAL,5);
?

<!--
咨詢內(nèi)容: 附件 :
-->
?
?來源:程序化99網(wǎng)( www.tumamayizhan.com )
博易技術(shù)人員:
您好,上述指標(biāo)就是個(gè)簡單均線指標(biāo)疊加MACD出信號,寫法有問題,導(dǎo)致輸出信號太多,肯定造成卡頓。
?
OI:AMOUNT,LINETHICK2;
YYYPOSITION:SMA(OI,99,1),POINTDOT;
EMA3:=EMA(CLOSE,3);
EMA5:=EMA(CLOSE,5);
EMA8:=EMA(CLOSE,8);
EMA13:=EMA(CLOSE,13);
DIFF0:=EMA(CLOSE,21)-EMA(CLOSE,55);
DEA0:=EMA(DIFF0,13);
LONGSIGN := DIFF0 >=DEA0;
SHORTSIGN :=DIFF0 <=DEA0;
DUOSIGN := CROSS(EMA5,EMA8);
KONGSIGN :=CROSS(EMA8,EMA5);
BULLSIGNAL:=DUOSIGN AND LONGSIGN;
BEARSIGNAL:=KONGSIGN AND SHORTSIGN;
DRAWICON(BULLSIGNAL,YYYPOSITION,4),ALIGN1;
DRAWICON(BEARSIGNAL,YYYPOSITION,5),ALIGN1;
來源 程序化久久網(wǎng)