分时资金G-修改
下载论坛里的“分时资金”后发现显示的图形与数据不匹配,仔细分析代码后发现有个别错误,现作修改后上传。感谢原作者!
(为了便于分析代码,自己加了注释)
{DRAWTEXTREL(10,10,'分时资金'),linethick1,ColorFFFF80;}
a1:=SUM((ORDERVOL(1,3)),0);{特买}
a2:=SUM((ORDERVOL(2,3)),0);{特卖}
a3:=(SUM((ORDERVOL(1,2)),0)) - a1;{大买-特买=大户买}
a4:=(SUM((ORDERVOL(2,2)),0)) - a2;{大卖-特卖=大户卖}
a5:=(SUM((ORDERVOL(1,1)),0)) - (SUM((ORDERVOL(1,2)),0));{中买-大买=中户买}
a6:=(SUM((ORDERVOL(2,1)),0)) - (SUM((ORDERVOL(2,2)),0));{中卖-大卖=中户卖}
a7:=(SUM((ORDERVOL(1,0)),0)) - (SUM((ORDERVOL(1,1)),0));{散户买}
a8:=(SUM((ORDERVOL(2,0)),0)) - (SUM((ORDERVOL(2,1)),0));{散户卖}
b1:=(SUM((ORDERVOL(1,0)),0));{总买}
b2:=(SUM((ORDERVOL(2,0)),0));{总卖}
a10:=a7 - a8;{散买卖差}
a11:=a5 - a6;{中买卖差}
a12:=a3 - a4;{大买卖差}
a13:=a1 - a2;{特买卖差}
a14:=(SUM((ORDERVOL(1,2)),0)) - (SUM((ORDERVOL(2,2)),0));{大买卖差(主力)差}
a15:=(100 * a7) / b1;{散买比例}
a16:=(100 * a8) / b2;{散卖比例}
a17:=(100 * a5) / b1;{中买比例}
a18:=(100 * a6) / b2;{中卖比例}
a19:=(100 * a3) / b1;{大买比例}
a20:=(100 * a4) / b2;{大卖比例}
a21:=(100 * a1) / b1;{特买比例}
a22:=(100 * a2) / b2;{特卖比例}
主力:A14,linethick2,colorRed;
特大户:A13,linethick1,colorWhite;
大户:A12,linethick1,colorYellow;
中户:A11,linethick1,colorGreen;
a23:=(100 * (SUM((ORDERVOL(1,2)),0))) / b1;{大单买比例}
a24:=(100 * (SUM((ORDERVOL(2,2)),0))) / b2;{大单卖比例}
a25:=a15-a16;{散比例差}
a26:=a17-a18;{中比例差}
a27:=a19-a20;{大比例差}
a28:=a21-a22;{特比例差}
a29:=a27+a28;{大+特比例差}
a30:=(a1);{特买}
a31:=(a2);{特卖}
a32:=(a3);{大户买}
a33:=(a4);{大户卖}
a34:=(a5);{中户买}
a35:=(a6);{中户卖}
a36:=(a7);{散户买}
a37:=(a8);{散户卖}
a38:=((SUM((ORDERVOL(1,2)),0)));{大单买(主力买)}
a39:=((SUM((ORDERVOL(2,2)),0)));{大单卖(主力卖)}
a40:=(a10);{散买卖差}
a41:=500 / (MAX(a30,a31,a32,a33,a34,a35,a36,a37,a40,中户,大户,特大户));{500/所以买卖值的最大值}
a42:=550 / (MAX(a38,a39,主力));{500/大单(主力)买卖、大单(主力)差值的最大值}
a43:=600 - (a30 * a41);{特买定位}
a44:=600 - (a31 * a41);{特卖定位}
a45:=600 - (a32 * a41);{大户买定位}
a46:=600 - (a33 * a41);{大户卖定位}
a47:=600 - (a34 * a41);{中户买定位}
a48:=600 - (a35 * a41);{中户卖定位}
a49:=600 - (a36 * a41);{散户买定位}
a50:=600 - (a37 * a41);{散户卖定位}
a51:=600 - (a38 * a42);{主力买定位}
a52:=600 - (a39 * a42);{主力卖定位}
a53:=600 - (a40 * a41);{散买卖差定位}
a54:=600 - (中户 * a41);{中买卖差定位}
a55:=600 - (大户 * a41);{大买卖差定位}
a56:=600 - (特大户 * a41);{特买卖差定位}
a57:=600 - (主力 * a42);{大买卖差/主力差定位}
{特大 柱}
DRAWRECTREL(50,a43,70,600,250),colorYellow;
DRAWRECTREL(70,a44,90,600,9213440),colorYellow;
DRAWRECTREL(90,a56,110,600,(IF((a13 >= 0),3289855,8584960))),colorYellow;
{大户 柱}
DRAWRECTREL(220,a45,240,600,250),colorYellow;
DRAWRECTREL(240,a46,260,600,9213440),colorYellow;
DRAWRECTREL(260,a55,280,600,(IF((a12 >= 0),3289855,8584960))),colorYellow;
{中户 柱}
DRAWRECTREL(420,a47,440,600,250),colorYellow;
DRAWRECTREL(440,a48,460,600,9213440),colorYellow;
DRAWRECTREL(460,a54,480,600,(IF((a11 >= 0),3289855,8584960))),colorYellow;
{散户 柱}
DRAWRECTREL(620,a49,640,600,255),colorYellow;
DRAWRECTREL(640,a50,660,600,9213440),colorYellow;
DRAWRECTREL(660,a53,680,600,(IF((a10 >= 0),3289855,8584960))),colorYellow;
{主力 柱}
DRAWRECTREL(850,a51,875,600,250),colorYellow;
DRAWRECTREL(875,a52,900,600,9213440),colorYellow;
DRAWRECTREL(900,a57,925,600,(IF((a14 >= 0),3289855,8584960))),colorYellow;
DRAWRECTREL(0,600,1000,604,255),colorWhite;
DRAWTEXTREL(35,625,'特大户'),linethick2,ColorDDFFFF;
DRAWTEXTREL(220,625,'大户'),linethick2,ColorDDFFFF;
DRAWTEXTREL(420,625,'中户'),linethick2,ColorDDFFFF;
DRAWTEXTREL(620,625,'散户'),linethick2,ColorDDFFFF;
DRAWTEXTREL(850,625,'主力'),linethick2,ColorDDFFFF;
DRAWTEXTREL(2,720,' 特大户:'+NUMTOSTR(a21)+'%'),colorRed;
DRAWTEXTREL(2,790,' 特大户:'+NUMTOSTR(a22)+'%'),colorGreen;
DRAWTEXTREL(2,860,'特大户差:'+NUMTOSTR(a28)+'%'),colorWhite;
DRAWTEXTREL(200,720,'大户买:'+NUMTOSTR(a19)+'%'),colorRed;
DRAWTEXTREL(200,790,'大户卖:'+NUMTOSTR(a20)+'%'),colorGreen;
DRAWTEXTREL(200,860,'大户差:'+NUMTOSTR(a27)+'%'),colorWhite;
DRAWTEXTREL(400,720,'中户买:'+NUMTOSTR(a17)+'%'),colorRed;
DRAWTEXTREL(400,790,'中户卖:'+NUMTOSTR(a18)+'%'),colorGreen;
DRAWTEXTREL(400,860,'中户差:'+NUMTOSTR(a26)+'%'),colorWhite;
DRAWTEXTREL(600,720,'散户买:'+NUMTOSTR(a15)+'%'),colorRed;
DRAWTEXTREL(600,790,'散户卖:'+NUMTOSTR(a16)+'%'),colorGreen;
DRAWTEXTREL(600,860,'散户差:'+NUMTOSTR(a25)+'%'),colorWhite;
DRAWTEXTREL(820,800,' 主力差:'+NUMTOSTR(a29)+'%'),colorYellow; |