کد زیر فیلتر مکدی می باشد که بسیاری از کاربران این فیلتر را درخواست کرده بودند. فیلتر مکدی از دسته فیلترهای بسیار مهم و کاربردی در بازار بورس است.
فیلتر کراس رو به بالای مکدی: برای مشاهده سهم هایی که کراس رو به بالای مکدی دارند از کد زیر استفاده می شود.
true==function() { if([ih][0].PClosing!=(pc) && [ih][0].ZTotTran!=(tno) && [ih][0].QTotCap!=(tval)){ var len=[ih].length; if(typeof [ih][0].fixed =='undefined'){ for(var i=len;i>0;i--){ if(typeof [ih][i] =='undefined'){ [ih][i]={}; } [ih][i].PriceFirst=[ih][i-1].PriceFirst; [ih][i].PClosing=[ih][i-1].PClosing; [ih][i].PDrCotVal=[ih][i-1].PDrCotVal; [ih][i].ZTotTran=[ih][i-1].PriceFirst; [ih][i].QTotTran5J=[ih][i-1].QTotTran5J; [ih][i].QTotCap=[ih][i-1].QTotCap; [ih][i].PriceChange=[ih][i-1].PriceChange; [ih][i].PriceMin=[ih][i-1].PriceMin; [ih][i].PriceMax=[ih][i-1].PriceMax; [ih][i].PriceYesterday=[ih][i-1].PriceYesterday; } [ih][0].fixed=1; } [ih][0].PriceFirst=(pf); [ih][0].PClosing=(pc); [ih][0].PDrCotVal=(pl); [ih][0].ZTotTran=(tno); [ih][0].QTotTran5J=(tvol); [ih][0].QTotCap=(tval); [ih][0].PriceChange=(pcc); [ih][0].PriceMin=(pmin); [ih][0].PriceMax=(pmax); [ih][0].PriceYesterday=(py); } function SMA(start,day,type){ var sum=0; for(var i=start;i<start+day;i++){ sum+=[ih][i][type]; } var SMA=sum/day; return SMA; } function EMA(start,day,type){ var len=[ih].length; if(type=='MACD'){ var loop_start=len-26; }else{ var loop_start=len-day; } var first=SMA(loop_start,day,type); var alpha=2/(day+1); for(var i=loop_start;i>=0;i--){ if(i==loop_start){ [ih][i].EMA=first; }else{ [ih][i].EMA=([ih][i][type]-[ih][i+1].EMA)*alpha+[ih][i+1].EMA; } } return [ih][start].EMA; } var len=[ih].length; for(var i=0;i<len;i++){ [ih][i].MACD=EMA(i,12,'PDrCotVal')-EMA(i,26,'PDrCotVal'); } var signal=EMA(0,9,'MACD'); var signal_before=EMA(2,9,'MACD'); var histo_today=[ih][0].MACD-signal; var histo_before=[ih][2].MACD-signal_before; (cfield0)=parseFloat([ih][0].MACD.toFixed(2)); (cfield1)=parseFloat(signal.toFixed(2)); (cfield2)=parseFloat(histo_today.toFixed(2)); if( histo_today >0 && histo_before < 0 ) return true; }()