真金白银)独一无二 {黑色零线} 0,colorblack; {/黑色零线}
{黄金比例} 比:=(SQRT(5)-1)/2;{~0.618} {.反比} 反比:=2/(SQRT(5)-1);{~1.618} 双反比:=POW(反比,反比);{~2.178} {/.反比} {.比反比} 比反比:=POW(比,反比);{~0.459} 比双反比:=POW(比,双反比);{~0.351}//比反比*比双反比~=0.161 比反比双反比:=POW(比反比,双反比);{~0.183}//比双反比*比反比双反比~=0.064 {/.比反比} {/黄金比例} {填充背景.BGB} //填充背景为黑色???: //DRAWGBK(1, COLORRGB(0,0,0), COLORRGB(0,0,0),0); {填充背景.BGB.END}
{主题及LOGO}
DRAWTEXTEX(1,1,比双反比*1000,比反比*1000,'·FOR MONEY·FOR GIRL·'),COLORC5B5FF; DRAWTEXTEX(1,1,382,618,'超级吸金黑洞'),COLOR696969; {/主题及LOGO 2009.01.27}
{当前数据周期类型} 当前数据周期类型:=DATATYPE;{返回值范围为-1-12,分别表示即时图、分笔成交、1分钟、5分钟、15分钟、30分钟、60分钟、日、周、 月、年、多日、多分钟、多秒} 当前数据周期类型超日线:=当前数据周期类型>=6; 当前数据周期类型低六十分钟:=当前数据周期类型<=5; 当前数据周期类型低三十分钟:=当前数据周期类型<=4; {/当前数据周期类型}
{股价关系提示} DRAWTEXTEX(1,1,0,879,' 股价=每笔金额/每笔换手*1/流通盘\n===>股价与每笔金额(资金度)成正比,与每笔换手(控盘度)成反比... (1/流通盘)一般不变为常量'),colorc6B7D8B; {/股价关系提示}
{显示所属板块.黑金} //定义常量 所属板块字符串:=BLKNAME; 截取所属板块字符串:=' 所属板块: '+所属板块字符串; 单行最大显示长度:=159;//单位:字节 截取所属板块字符串长度:=STRLEN(截取所属板块字符串); //定义并初始化变量 显示字符串:=''; 逗号:=','; 末单字符截取位置:=单行最大显示长度-1; 单行末单个字符:=''; //判断截取长度 IF 截取所属板块字符串长度>单行最大显示长度 THEN //截取长度超过单行最大显示长度时,开始以下运算. BEGIN //截取长度超过单行最大显示长度时,循环 WHILE 截取所属板块字符串长度>单行最大显示长度 DO BEGIN //循环计算单行最大长度前最后一个逗号的位置 WHILE STRCMP(单行末单个字符,逗号)<>0 DO BEGIN 单行末单个字符:=STRMID(截取所属板块字符串,末单字符截取位置,1); 末单字符截取位置:=末单字符截取位置-1; END; //截取截取所属板块字符串到最后逗号位置. 单行可显示字符串:=STRLEFT(截取所属板块字符串,末单字符截取位置+1)+'\n'; //逗号位置所截取长度. 单行可显示字符串长度:=STRLEN(单行可显示字符串)-1; //前段填充空格 对 所属板块字符串 截取所属板块字符串:=' '+STRMID(截取所属板块字符串,单行可显示字符串长度,0); //填充后字符串长度. 截取所属板块字符串长度:=STRLEN(截取所属板块字符串); //再次初始化变量. 末单字符截取位置:=单行最大显示长度-1; 单行末单个字符:=''; //对可显示字符串进行累加. 显示字符串:=显示字符串+单行可显示字符串; END; //累加后的可显示字符串累加最后一行截取字符串. 显示字符串:=显示字符串+截取所属板块字符串; END; ELSE //截取长度不超过单行最大显示长度时,进行以下运算. 显示字符串:=截取所属板块字符串; //屏幕左上角显示输出可显示所属板块字符串. DRAWTEXTEX(1,1,0,0,显示字符串),color8B8B00; {/显示所属板块.黑金}
{代码核心算法概括 SUM(QT ANDOR AMOUNT,SUMBARS(V,CAPITAL));} {完全量计算(算法起源)} 完全:=1;{可根据股本流通率,动态更新,将1替换.当非流通股解禁时动态更新流通盘大小} 完全量:=完全*capital; 完全略周期:=sumbars(v,完全量); 完全略周期量:=sum(v,完全略周期); 完全略周期超出量:=完全略周期量-完全量; 完全略周期减一周期:=完全略周期-1; 完全略周期初周期量:=ref(v,完全略周期减一周期); 完全略周期超出量初周期量比:=完全略周期超出量/完全略周期初周期量; 完全略周期超出周期:=1*完全略周期超出量初周期量比;{超出量比粗认为超出周期,使用周期越小越精确} 完全略周期初周期金额:=ref(amount,完全略周期减一周期); 完全略周期初周期笔数:=ref(qt,完全略周期减一周期); 完全略周期超出金额:=完全略周期初周期金额*完全略周期超出量初周期量比;{超出量比粗认为超出金额比,使用周期越小越精确} 完全略周期超出笔数:=完全略周期初周期笔数*完全略周期超出量初周期量比;{超出量比粗认为超出笔数比,使用周期越小越精确} 完全略周期金额:=sum(amount,完全略周期); 完全略周期笔数:=sum(qt,完全略周期); 完全量周期:=完全略周期-完全略周期超出周期; 完全金额:=完全略周期金额-完全略周期超出金额; 完全笔数:=完全略周期笔数-完全略周期超出笔数; 完全价:=完全金额/完全量/100; 完全市值:=完全金额/100000000;//单位:亿元 {/完全量计算}
{黄金比例量周期超精简版.黑金} {向前45.9%(比反比)换手,35.1%(比双反比)换手所用周期} 比反比量周期:=sumbars(v,比反比*完全量)-(sum(v,sumbars(v,比反比*完全量))-比反比*完全量)/ref(v,sumbars(v,比反比*完全量)-1); 比双反比量周期:=sumbars(v,比双反比*完全量)-(sum(v,sumbars(v,比双反比*完全量))-比双反比*完全量)/ref(v,sumbars(v,比双反比*完全量)-1); {/黄金比例量周期超精简版.黑金}
{以量周期计算要使用的周期及周期对应数据及数据运算} {.比周期计算} 比周期:=完全量周期*比反比;//~0.459 比略周期:=CEILING(比周期); 比略周期超出周期:=比略周期-比周期; 比略周期超出周期初比:=比略周期超出周期/1; 比略周期减一周期:=比略周期-1; 比略周期初周期金额:=ref(amount,比略周期减一周期); 比略周期初周期量:=ref(v,比略周期减一周期); 比略周期初周期笔数:=ref(qt,比略周期减一周期); 比略周期超出金额:=比略周期初周期金额*比略周期超出周期初比; 比略周期超出量:=比略周期初周期量*比略周期超出周期初比; 比略周期超出笔数:=比略周期初周期笔数*比略周期超出周期初比; 比略周期金额:=sum(amount,比略周期); 比略周期量:=sum(v,比略周期); 比略周期笔数:=sum(qt,比略周期); 比周期金额:=比略周期金额-比略周期超出金额; 比周期量:=比略周期量-比略周期超出量; 比周期笔数:=比略周期笔数-比略周期超出笔数; 比周期换手:=比周期量*100000000/完全量; 比周期量大于零:=比周期量>0; 上次比周期量大于零周期数:=BARSLAST(比周期量大于零); 原比周期市值:=比周期金额*完全量/比周期量/100000000; 原比周期价:=比周期金额/比周期量/100; 原比周期每笔金额:=比周期金额/比周期笔数/10000; 原比周期每笔换手:=比周期换手/比周期笔数; 比周期市值:=IF(比周期量大于零,原比周期市值,ref(原比周期市值,上次比周期量大于零周期数));//单位:亿元 比周期价:=IF(比周期量大于零,原比周期价,ref(原比周期价,上次比周期量大于零周期数));//单位:元每股 比周期每笔金额:=IF(比周期量大于零,原比周期每笔金额,ref(原比周期每笔金额,上次比周期量大于零周期数)); //单位:万元每笔{比周期资金度} 比周期每笔换手:=IF(比周期量大于零,原比周期每笔换手,ref(原比周期每笔换手,上次比周期量大于零周期数)); //单位:每笔亿分之{比周期控盘度} {上次比周期量大于零周期数? OR 上次比周期量大于零周期数-1?} {/.比周期计算}
{.比比周期计算} 比比周期:=比反比量周期*比双反比;//比反比*比双反比~=0.161 比比略周期:=CEILING(比比周期); 比比略周期超出周期:=比比略周期-比比周期; 比比略周期超出周期初比:=比比略周期超出周期/1; 比比略周期减一周期:=比比略周期-1; 比比略周期初周期金额:=ref(amount,比比略周期减一周期); 比比略周期初周期量:=ref(v,比比略周期减一周期); 比比略周期初周期笔数:=ref(qt,比比略周期减一周期); 比比略周期超出金额:=比比略周期初周期金额*比比略周期超出周期初比; 比比略周期超出量:=比比略周期初周期量*比比略周期超出周期初比; 比比略周期超出笔数:=比比略周期初周期笔数*比比略周期超出周期初比; 比比略周期金额:=sum(amount,比比略周期); 比比略周期量:=sum(v,比比略周期); 比比略周期笔数:=sum(qt,比比略周期); 比比周期金额:=比比略周期金额-比比略周期超出金额; 比比周期量:=比比略周期量-比比略周期超出量; 比比周期笔数:=比比略周期笔数-比比略周期超出笔数; 比比周期换手:=比比周期量*100000000/完全量; 比比周期量大于零:=比比周期量>0; 上次比比周期量大于零周期数:=BARSLAST(比比周期量大于零); 原比比周期市值:=比比周期金额*完全量/比比周期量/100000000; 原比比周期价:=比比周期金额/比比周期量/100; 原比比周期每笔金额:=比比周期金额/比比周期笔数/10000; 原比比周期每笔换手:=比比周期换手/比比周期笔数; 比比周期市值:=IF(比比周期量大于零,原比比周期市值,ref(原比比周期市值,上次比比周期量大于零周期数));//单位:亿元 比比周期价:=IF(比比周期量大于零,原比比周期价,ref(原比比周期价,上次比比周期量大于零周期数));//单位:元每股 比比周期每笔金额:=IF(比比周期量大于零,原比比周期每笔金额,ref(原比比周期每笔金额,上次比比周期量大于零周期数)); //单位:万元每笔{比比周期资金度} 比比周期每笔换手:=IF(比比周期量大于零,原比比周期每笔换手,ref(原比比周期每笔换手,上次比比周期量大于零周期数)); //单位:每笔亿分之{比比周期控盘度} {上次比比周期量大于零周期数? OR 上次比比周期量大于零周期数-1?} {/.比比周期计算}
{.比比比周期计算.起源.黑金} 比比比周期:=比双反比量周期*比反比双反比;//比双反比*比反比双反比~=0.064 {取消对比比比周期的大于有效周期引用...计算更正确...渐进消亡,,用有效周期的有效数据的可用性} 比比比略周期:=CEILING(比比比周期); 比比比略周期超出周期:=比比比略周期-比比比周期; 比比比略周期超出周期初比:=比比比略周期超出周期/1; 比比比略周期减一周期:=比比比略周期-1; 比比比略周期初周期金额:=ref(amount,比比比略周期减一周期); 比比比略周期初周期量:=ref(v,比比比略周期减一周期); 比比比略周期初周期笔数:=ref(qt,比比比略周期减一周期); 比比比略周期超出金额:=比比比略周期初周期金额*比比比略周期超出周期初比; 比比比略周期超出量:=比比比略周期初周期量*比比比略周期超出周期初比; 比比比略周期超出笔数:=比比比略周期初周期笔数*比比比略周期超出周期初比; 比比比略周期金额:=sum(amount,比比比略周期); 比比比略周期量:=sum(v,比比比略周期); 比比比略周期笔数:=sum(qt,比比比略周期); 比比比周期金额:=比比比略周期金额-比比比略周期超出金额; 比比比周期量:=比比比略周期量-比比比略周期超出量; 比比比周期笔数:=比比比略周期笔数-比比比略周期超出笔数; 比比比周期换手:=比比比周期量*100000000/完全量; 比比比周期量大于零:=比比比周期量>0; 上次比比比周期量大于零周期数:=BARSLAST(比比比周期量大于零); 原比比比周期市值:=比比比周期金额*完全量/比比比周期量/100000000; 原比比比周期价:=比比比周期金额/比比比周期量/100; 原比比比周期每笔金额:=比比比周期金额/比比比周期笔数/10000; 原比比比周期每笔换手:=比比比周期换手/比比比周期笔数; 比比比周期市值:=IF(比比比周期量大于零,原比比比周期市值,ref(原比比比周期市值,上次比比比周期量大于零周期数)); //单位:亿元 比比比周期价:=IF(比比比周期量大于零,原比比比周期价,ref(原比比比周期价,上次比比比周期量大于零周期数)); //单位:元每股 比比比周期每笔金额:=IF(比比比周期量大于零,原比比比周期每笔金额,ref(原比比比周期每笔金额,上次比比比周期量大于零周期数)); //单位:万元每笔{比比比周期资金度} 比比比周期每笔换手:=IF(比比比周期量大于零,原比比比周期每笔换手,ref(原比比比周期每笔换手,上次比比比周期量大于零周期数)); //单位:每笔亿分之{比比比周期控盘度} {上次比比比周期量大于零周期数? OR 上次比比比周期量大于零周期数-1?} {/.比比比周期计算.起源.黑金} {/以量周期计算要使用的周期及周期对应数据及数据运算}
{不知道飞狐支持UNICODE大字符集的显示否?那样就可以制作非·非主流火星文版的黑金指标~\(≧▽≦)/~啦啦啦,,,哗哗哗....}
{当前周期计算} 当前周期金额:=AMOUNT; 当前周期量:=VOL; 当前周期笔数:=QT; 当前周期换手:=当前周期量*100000000/完全量; 当前周期量大于零:=当前周期量>0; 上次当前周期量大于零周期数:=BARSLAST(当前周期量大于零); 原当前周期市值:=当前周期金额*完全量/当前周期量/100000000; 原当前周期价:=当前周期金额/当前周期量/100; 原当前周期每笔金额:=当前周期金额/当前周期笔数/10000; 原当前周期每笔换手:=当前周期换手/当前周期笔数; {引用语句消耗的资源 VS 判断语句消耗的资源????} {不知是否需要添加判断 上次当前周期量大于零周期数=0 ,而后决定是否使用 REF 引用语句....以减少引用语句 消耗的 处理器资源 或及 内存 或虚拟硬盘 读写时间消耗......或不会消耗多少,不需要添加判断语句,,,,,或添加判断语句所耗费的资源同样高????} {想了想,,,,,还是加上判断语句吧........我真的好懒,,,不想动哪......~~~~(>_<)~~~~ 呜呜呜呜呜呜} 当前周期市值:=IF(当前周期量大于零,原当前周期市值,ref(原当前周期市值,上次当前周期量大于零周期数)); //单位:亿元 当前周期价:=IF(当前周期量大于零,原当前周期价,ref(原当前周期价,上次当前周期量大于零周期数)); //单位:元每股 当前周期每笔金额:=IF(当前周期量大于零,原当前周期每笔金额,ref(原当前周期每笔金额,上次当前周期量大于零周期数)); //单位:万元每笔{当前资金度} 当前周期每笔换手:=IF(当前周期量大于零,原当前周期每笔换手,ref(原当前周期每笔换手,上次当前周期量大于零周期数)); //单位:每笔亿分之{当前控盘度} {上次当前周期量大于零周期数? OR 上次当前周期量大于零周期数-1?} {/当前周期计算} {霍哗哗,终于写完啦....哗哈哈哈哈哈O(∩_∩)O哈哈~}
{显示输出价} //单位:元每股 白金价:比周期价,colorwhite; 蓝金价:比比周期价,colorff9900; 黄金价:比比比周期价,color00D7FF; 当前价:当前周期价,colorGRAY,linethick2; {/显示输出价}
{显示输出市值} {单位:亿元} { 白金市值:=比周期市值,colorwhite; 蓝金市值:=比比周期市值,colorff9900; 黄金市值:=比比比周期市值,color00D7FF; 当前周期市值:=当前周期市值,colorGRAY,linethick2; } {/显示输出市值}
{显示输出每笔金额} { //单位:万元每笔 {30,60分钟周期不明原因有别} {资金度} 白金每笔金额:=比周期每笔金额,colorwhite; 蓝金每笔金额:=比比周期每笔金额,colorff9900; 黄金每笔金额:=比比比周期每笔金额,color00D7FF; {一般不要显示当前周期每笔金额,其指标值过大时,破坏其他稳定指标线可见性} 当前周期每笔金额:=当前周期每笔金额,colorGRAY,linethick2; } {/显示输出每笔金额}
{显示输出每笔换手} { //单位:每笔亿分之 {30.60分钟周期是否有差?} {控盘度} 白金每笔换手:=比周期每笔换手,colorwhite; 蓝金每笔换手:=比比周期每笔换手,colorff9900; 黄金每笔换手:=比比比周期每笔换手,color00D7FF; {一般不要显示当前周期每笔换手,其指标值过大时,破坏其他稳定指标线可见性} 当前周期每笔换手:=当前周期每笔换手,colorGRAY,linethick2; } {/显示输出每笔换手}
{价显示停牌周期} 现在日期:=CURRENTDATE; 此周期日期:=DATE; 上周期日期:=ref(DATE,1); 停止交易周期数:=DATEDIFF(上周期日期,此周期日期)-1; 停止交易星期数:=停止交易周期数/7; 停止交易整星期数:=FLOOR(停止交易星期数); 超出周期数:=停止交易周期数-停止交易整星期数*7;{1-6} 周末休市日期数:=2*停止交易整星期数; 当前星期:=WEEKDAY; 当前为周末:=当前星期=6 or 当前星期=0; 超出休市数:=count(当前为周末,超出周期数); 休市周期数:=周末休市日期数+超出休市数; 停牌周期数:=停止交易周期数-休市周期数-2; {我没搞明白,这里为什么减去二结果就正确了。。。。我自己写的代码自己都不明白。。。~~~~~~~~~~~} 停牌周期数小于十:=停牌周期数<10 and 停牌周期数>0; 停牌周期数大于等于十:=停牌周期数>=10; 停牌周期数字符串:= NUMTOSTR(停牌周期数,0); drawtext(停牌周期数>0,当前周期价,'停牌'),align2,color8B8B7A; drawtext(停牌周期数小于十,当前周期价,' 周期'),align1,color8B8B7A; drawtext(停牌周期数大于等于十,当前周期价,'周期'),align1,color8B8B7A; DRAWNUMBER(停牌周期数>0,当前周期价,停牌周期数,0),colorwhite; {/价显示停牌周期}
{市值显示停牌周期} { 现在日期:=CURRENTDATE; 此周期日期:=DATE; 上周期日期:=ref(DATE,1); 停止交易周期数:=DATEDIFF(上周期日期,此周期日期)-1; 停止交易星期数:=停止交易周期数/7; 停止交易整星期数:=FLOOR(停止交易星期数); 超出周期数:=停止交易周期数-停止交易整星期数*7;{1-6} 周末休市日期数:=2*停止交易整星期数; 当前星期:=WEEKDAY; 当前为周末:=当前星期=6 or 当前星期=0; 超出休市数:=count(当前为周末,超出周期数); 休市周期数:=周末休市日期数+超出休市数; 停牌周期数:=停止交易周期数-休市周期数-2; {我没搞明白,这里为什么减去二结果就正确了。。。。我自己写的代码自己都不明白。。。~~~~~~~~~~~} 停牌周期数小于十:=停牌周期数<10 and 停牌周期数>0; 停牌周期数大于等于十:=停牌周期数>=10; 停牌周期数字符串:= NUMTOSTR(停牌周期数,0); drawtext(停牌周期数>0,当前周期市值,'停牌'),align2,color8B8B7A; drawtext(停牌周期数小于十,当前周期市值,' 周期'),align1,color8B8B7A; drawtext(停牌周期数大于等于十,当前周期市值,'周期'),align1,color8B8B7A; DRAWNUMBER(停牌周期数>0,当前周期市值,停牌周期数,0),colorwhite; } {/市值显示停牌周期}
{财务数据} 换行:=' \n '; {.显示财务数据更新日期} 更新日期:=FINANCE( 0); 飞狐函数接口规范格式更新日期:=更新日期*100-19000000+30; 更新日期字符串:=NUMTOSTR(更新日期,0); 取更新日期年份:=STRLEFT(更新日期字符串,4); 取更新日期月份:=STRRIGHT(更新日期字符串,2); 更新日期年月字符串:=取更新日期年份+'年'+取更新日期月份+'月'; 现即更新日期:=DATE=飞狐函数接口规范格式更新日期 or (ref(date,1)<飞狐函数接口规范格式更新日期 and date>飞狐函数接口规范格式更新日期); 更新日期字符串:='财务数据最后于'+更新日期年月字符串+'更新'; DRAWTEXT(现即更新日期,完全价,更新日期字符串),color8B658B; {/.显示财务数据更新日期}
{.股本分布} 总股本:=FINANCE( 1);//单位:百手 或万股 国家股本:=FINANCE( 2);//单位:百手 或万股 B股股本:=FINANCE( 5);//单位:百手 或万股 H股股本:=FINANCE( 6);//单位:百手 或万股 A股股本:=FINANCE( 7);//单位:百手 或万股 国有控股率:=国家股本/总股本*100;//单位:百分之一 A股流通率:=A股股本/总股本*100;//单位:百分之一 B股流通率:=B股股本/总股本*100;//单位:百分之一 H股流通率:=H股股本/总股本*100;//单位:百分之一 股本流通率:=(B股股本+H股股本+A股股本)/总股本*100;//单位:百分之一 //股本分布字符串: 国有控股率字符串:=IF(国有控股率>1,' 国有控股率:'+NUMTOSTR(国有控股率,1)+'%'+换行,换行); A股流通率字符串:='A股流通率:'+NUMTOSTR(A股流通率,1)+'%'+换行; 股本流通率字符串:=IF((A股流通率+1)>股本流通率,'','股本流通率:'+NUMTOSTR(股本流通率,1)+'%'+换行); B股流通率字符串:=IF(B股流通率>1,'B股流通率:'+NUMTOSTR(B股流通率,1)+'%'+换行,''); H股流通率字符串:=IF(H股流通率>1,'H股流通率:'+NUMTOSTR(H股流通率,1)+'%'+换行,''); //输出显示股本分布字符串: DRAWTEXTEX(1,1,3,123,国有控股率字符串+股本流通率字符串+A股流通率字符串+B股流通率字符串+H股流通率字符串),COLOR3F85CD; {/.股本分布.结束}
{.总资产状况} 总资产:=FINANCE(10)/100000;//单位:亿元 {总资产大小} 资本公积金:=FINANCE(17)/100000;//单位:亿元 {备用金,储备金,保留资金} 每股公积金:=FINANCE(18);//单位:元每股 {等于 资本公积金/总股本} 公积金储备率:=资本公积金/总资产*100;//单位:百分之一 {抗风险能力,稳定能力?} 股东权益:=FINANCE(19)/100000;//单位:亿元 {好像等于净资产 股东权益=总资产-负债=净资产} 净资产:=股东权益;{???}//单位:亿元 负债:=总资产-股东权益;//单位:亿元 {等于总资产-净资产} 每股收益:=FINANCE(33);//单位:元每股 {总收益/总股本} 总收益:=每股收益*总股本/10000;//单位:亿元 股东权益比率:=FINANCE(36);//单位:百分之一 {等于 净资产(=股东权益)/总资产*100} 股东权益比总资产:=股东权益/总资产*100;//单位:百分之一 {等于股东权益比率} 每股净资:=FINANCE(34);//单位:元每股 {净资产/总的股本} 净资收益率:=FINANCE(37);//单位:百分之一 {每股收益/每股净资产*100} 总资产收益率:=总收益/总资产*100;//单位:百分之一 股东总数:=FINANCE(50);//单位:头..... `````````````````````{是全部股份的股东总数?而非流通股东总数?} 每股东资产:=总资产*10000/股东总数;//单位:万元每头.....~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 税后利润增长率:=FINANCE(54);//单位:百分之一? 总资产收益率增长率:=总资产收益率*(100+税后利润增长率)/100;{这差不多对了吧,也许可能大概应该MAYBE,中华象形文字比那些字母丰富直观多了} 总资产增长率:=FINANCE(56);//单位:百分之一?{总资产=上年总资产+上年总利润?} {资本扩张速度:=(100+税后利润增长率)*(100+总资产增长率)/100;//单位:百分之一}{此行定义有误,理解有误,以后改....不好意思,当下就改了} 资本扩张速度:=(100+总资产收益率增长率)*(100+总资产增长率)/100;//单位:百分之一{此定义不对的话,请联系:blackgoldenboy@sogou.com} //总资产状况字符串: 公积金储备率字符串:=' 公积金储备率:'+NUMTOSTR(公积金储备率,1)+'%'+换行;{公积金储备率越高,抗风险性越好,但同时减少了再投资的 资金,影响资本扩张.}{抗风险能力} 股东权益比率字符串:='股东权益比率:'+NUMTOSTR(股东权益比率,1)+'%'+换行;{股东权益(=净资产)比率越高,说明公司资产负债率越低,资 产可靠度越高.}{资产可靠度} 总资产收益率字符串:='总资产收益率:'+NUMTOSTR(总资产收益率,1)+'%'+换行;{总资产收益率越高,说明公司盈利能力越高,赚钱能力越 好}{盈利能力} 资本扩张速度字符串:=IF(资本扩张速度<>100,'资本扩张速度:'+NUMTOSTR(资本扩张速度,1)+'%'+换行,'');{速度越快,表明公司成长速度 越快,对应公司市值也应该上涨最快}{资本扩张速度} 每股东资产字符串:=IF(每股东资产<0.1,'','每股东资产:'+NUMTOSTR(每股东资产,1)+'万元'+换行);{每股东资产越多,说明???}{股东有钱度 } //输出显示总资产状况: DRAWTEXTEX(1,1,3,295,公积金储备率字符串+股东权益比率字符串+总资产收益率字符串+资本扩张速度字符串+每股东资产字符串),COLOR82DDEE; {本人独自一人进行量化分析与代码编写,甚感孤单,希望有人相伴} {/.总资产状况}
{.总资产每总股状况} 每股公积金:=每股公积金;//单位:元每股 每股收益:=每股收益;//单位:元每股 每股净资:=每股净资;//单位:元每股 {等于每股股东权益} 每股东资产:=总资产*10000/股东总数;//单位:万元每头 每股资产:=总资产*10000/总股本;//单位:元每股{每总股本股股价} 每股资产字符串:='每总股本股总资产:'+NUMTOSTR(每股资产,1)+'元'; //显示输出总资产每总股状况 DRAWTEXTEX(1,1,3,545,' '+更新日期字符串+'时'+每股资产字符串),COLOR13458B; DRAWTEXT(现即更新日期,完全价,换行+'当时的'+每股资产字符串),color8B658B; {/.总资产每总股本状况} {.A股市价状况} A股市净率:=当前价/每股净资; A股市总率:=当前价/每股资产; A股市盈率:=当前价/每股收益; //A股市值或市价状况字符串 A股市净率字符串:=' A股市净率:'+NUMTOSTR(A股市净率,1)+'倍'+换行; A股市总率字符串:='A股市总率:'+NUMTOSTR(A股市总率,1)+'倍'+换行; A股市盈率字符串:='A股市盈率:'+NUMTOSTR(A股市盈率,1)+'倍'+换行; //输出显示A股市价状况: DRAWTEXTEX(1,1,3,615,A股市净率字符串+A股市总率字符串+A股市盈率字符串),color1E69D2; {/.A股市价状况} {.A股资产} A股资产:=完全市值;//单位:亿元{A股完全换手总成交金额} A股资产字符串:=' A股市值:'+NUMTOSTR(A股资产,1)+'亿元'+换行; DRAWTEXTEX(1,1,3,758,A股资产字符串),COLORADDEFF; {/.A股资产} {.A股板块资产状况} {运算量巨大,运算卡机时间几近十数秒,另一个版本的占内存空间较大但可能运算时间较少的版本,测试未通过,为保证您的用户体验,现屏蔽此代码段} { {..末周期A股板块个股完全市值遍历累加和} {请保证数据完整性及正确性} A股板块板块字符串:='A股板块'; A股板块品种数量:=STKCOUNT(A股板块板块字符串); A股板块末周期累加市值:=0; FOR N=1 TO A股板块品种数量 DO BEGIN A股板块第N个品种代码:=STKFROMBLK(A股板块板块字符串,N); A股板块第N个品种市值:=STKINDI(A股板块第N个品种代码,'完全市值',0,DATAPERIOD); A股板块末周期累加市值:=A股板块末周期累加市值+A股板块第N个品种市值[DATACOUNT]; {去掉下标,可改编为动态A股板块总市值,但可能运算量极大,导致计算机假死.也可制作为横向统计方式(横向统计不需要此代码段,只需要对A股板块所有个股完全市值输出进行相等权重累加即可),每日更新,可大幅减少重复运算} END; 无敌黑金BOY的累加市值:=A股板块末周期累加市值;//单位:亿元 无敌黑金BOY的累加市值字符串:='A股板块总市值:'+NUMTOSTR(无敌黑金BOY的累加市值,1)+'亿元'+换行; {/..末周期A股板块个股完全市值遍历累加和} 当前个股市值占A股板块权重:=完全市值/无敌黑金BOY的累加市值*1000; 当前个股市值占A股板块权重字符串:='当前个股市值占A股板块权重:'+NUMTOSTR(当前个股市值占A股板块权重,1)+'‰'+换行; //显示输出当前个股市值占A股板块权重(单位:千分之): DRAWTEXTEX(1,1,3,800,' '+无敌黑金BOY的累加市值字符串+当前个股市值占A股板块权重字符串),COLORA1CFEE; {/.A股板块资产状况} } {/财务数据}
{黄金周期过小时 提示减小显示周期以精确计算及看盘} {换手率高,筹码流动活跃,股价变动周期很小.需使用60分钟或其以下周期看盘及计算.盘中即时进行交易} {如果您的计算机性能优良,建议您使用飞狐60分钟或其以下周期看盘,您选用的看盘周期越小,计算精度越高,但同时运算量更大.(推荐使用30分钟周期)} {为保证本代码所需原始数据精细性,以提高计算精确性.请不要屏蔽此代码段.} DRAWTEXTEX(比比比周期<双反比,1,555,367,'◆◆◆请将看盘周期调整为60分钟或其以下周期◆◆◆\n \n以使代码获取并计算 更精细数据信 息 及 \n \n 更即时准确地观察盘面变化\n \n \n(如无五分钟数据,请下载安装)\n \n 推荐您使用30分钟周期'),colorCDFAFF; {/黄金周期过小时 提示减小显示周期以精确计算及看盘}
{画面可见性较差时,提示更改画面可见性} {此段代码耗费处理器及中断资源巨大,已做屏蔽.如果需要,请自行打开屏蔽.WARNING:一般请不要打开此屏蔽.小心死机.} { {此代码段耗费处理器资源较大,,,但对初级用户且在30分钟周期以上看盘及计算时,建议不要屏蔽,,,,在十五分钟周期时运算量很大,,, 在五分钟周期运算时计算机几乎停止响应} {包含有动态跟踪光标及画面可见性函数,循环运算量巨大.耗用大量处理器资源,在30分钟周期以下运行时,计算机对用户的响应明显停滞, 甚至造成假死.因此如果您经常使用30分钟周期以下看盘,或者您不需要此菜鸟提示,强烈推荐屏蔽此代码段} //请选择是否关闭提示: 是否关闭提士:='否';{如需关闭提示,请填"是"} IF (STRCMP(是否关闭提士,'是')=0)=0and 当前数据周期类型低三十分钟=0 THEN BEGIN 主图可见光标最初位置:=SYSPARAM(2);//时间坐标 主图可见光标最后位置:=SYSPARAM(3);//时间坐标 当前可见周期数:=主图可见光标最后位置-主图可见光标最初位置; 运算周期:=IF(当前数据周期类型超日线=1,30,IF(当前数据周期类型低六十分钟=1,200,128)); IF (当前数据周期类型超日线 AND 当前可见周期数<=运算周期) OR (当前数据周期类型低六十分钟 AND 当前可见周期数<=运算周期)THEN BEGIN 主图可见光标最高位置:=SYSPARAM(4);//纵坐标 主图可见光标最低位置:=SYSPARAM(5);//纵坐标 当前可见价差:=主图可见光标最高位置-主图可见光标最低位置; 当前可见价幅:=当前可见价差/主图可见光标最低位置*100; 价幅周期价幅小:=当前可见价幅<46;{可根据您的需要,更改此项参数} 更改K线显示提示:='◆◆◆当前画面股价变动可见性较差◆◆◆\n\n您可以: \n\n右键单击 纵坐标栏 点选 [仅随K线变动] 选项\n\n\n(如 不需要此提醒 请将源码中"{提示更改画面可见性}中的"是否关闭提士:="否"改为"是")'; DRAWTEXTEX(价幅周期价幅小,1,167,212,更改K线显示提示),colorADDEFF; END; END; } {/画面可见性较差时,提示更改画面可见性} {点击看本软件截图: 58股票 公式网 http://www. 58gu. com 整理} |