這一篇文章要介紹的是,在 MultiCharts 搞出 "四捨六入五成雙" 的 Round函數,內容我就不多做介紹了,請自行研究程式碼,函數名稱: _bankerRound。
input: value(Numeric), digit(Numeric);
var:step1(0),step2(0),step3(0);
step1= value * Power(10, digit+1);
step2= absvalue( Mod(IntPortion(step1), 10) );
if step2>5 or (step2=5 and Mod(IntPortion(value*power(10,digit)),2)<>0) then
step3 = IntPortion(absvalue(value)*power(10,digit)+1) / power(10,digit);
if step2<5 or (step2=5 and Mod(IntPortion(value*power(10,digit)),2)=0) then
step3 = IntPortion(absvalue(value)*power(10,digit)+0) / power(10,digit);
_bankerRound= iff(value<0, -1, 1) * step3;
那麼,我們就用 print 來看一下它的效果,請自行體會吧。