测试环境: AB版本 v5.50.5(x64试用版, x32破解版); 操作系统 Win7x64; 硬件 AMD AthlonII x4 640 oc4G; 数据 国内市场沪深A股 2428只(RAMDisk); 内容 MA、BOLL、Fibonacci、周期日周月 方法 测试多次取平均值; 测试结果: 版本 类型 时间(s) %比 x64 2T2C 29.31 100% x64 4T4C (需注册版) x64 2T2Cx2 15.89 185% x64 2T4C 28.33 103% x32 4T4C 21.00 140% x32 4T2C 39.33 75% 注:类型 T=AB线程数,C=CPU核心数
试用版限制一个分析器只能使用2线程,尽量想办法用满4核。 注册版就没这个限制了,一个分析器用满系统核心。 这个测试是说明64位比32位在双核系统下快25%;在4核系统下至少快45%。 如果有朋友愿意提供64位的注册文件,就可做完整的测试, 保证只断网离线使用,绝不会发生在线检测冲突; 或者,可付费买个离线版,绝不冲突,否则都没法用了。
在5.6.02 RC2 x64基础上补齐,测试结果: 版本 类型 时间(s) %比 x64 2T4C 34 100% x64 4T4C 18 189% 注:在RC1的时候,就已经发现了5.06要比5.05慢,编译优化效果差了。
分析器,扫描测试用例公式: function MaScan(cInterval) { TimeFrameSet(cInterval); M5 = MA(C, 5); M10 = MA(C,10); M20 = MA(C,20); M30 = MA(C,30); M50 = MA(C,50); M60 = MA(C,60); M100 = MA(C,100); M120 = MA(C,120); M200 = MA(C,200); M250 = MA(C,250); TimeFrameRestore(); M5 = TimeFrameExpand(M5, cInterval); M10 = TimeFrameExpand(M10, cInterval); M20 = TimeFrameExpand(M20, cInterval); M30 = TimeFrameExpand(M30, cInterval); M50 = TimeFrameExpand(M50, cInterval); M60 = TimeFrameExpand(M60, cInterval); M100 = TimeFrameExpand(M100, cInterval); M120 = TimeFrameExpand(M120, cInterval); M200 = TimeFrameExpand(M200, cInterval); M250 = TimeFrameExpand(M250, cInterval); return True; } function BiBollScan(cInterval) { TimeFrameSet(cInterval); BBI_M = (MA(C, 4)+MA(C, 8)+MA(C, 16)) / 3; BBI_U = BBI_M+3*StDev(BBI_M,10); BBI_D = BBI_M-3*StDev(BBI_M,10); Boll_M = MA(C, 20); Boll_U = BBandTop(C, 20, 2); Boll_D = BBandBot(C, 20, 2); TimeFrameRestore(); BBI_M = TimeFrameExpand(BBI_M, cInterval); BBI_U = TimeFrameExpand(BBI_U, cInterval); BBI_D = TimeFrameExpand(BBI_D, cInterval); Boll_M = TimeFrameExpand(Boll_M, cInterval); Boll_U = TimeFrameExpand(Boll_U, cInterval); Boll_D = TimeFrameExpand(Boll_D, cInterval); return True; } function FiboScan(cInterval) { TimeFrameSet(cInterval); HLH = HHV(H,250); HLL = LLV(L,250); HLR = HLH-HLL; HL8 = HLL+HLR*0.809; HL6 = HLL+HLR*0.618; HL5 = HLL+HLR*0.5; HL3 = HLL+HLR*0.382; HL2 = HLL+HLR*0.191; CCH = HHV(C,250); CCL = LLV(C,250); CCR = CCH-CCL; CC8 = CCL+CCR*0.809; CC6 = CCL+CCR*0.618; CC5 = CCL+CCR*0.5; CC3 = CCL+CCR*0.382; CC2 = CCL+CCR*0.191; TimeFrameRestore(); HLH = TimeFrameExpand(HLH, cInterval); HLL = TimeFrameExpand(HLL, cInterval); HL8 = TimeFrameExpand(HL8, cInterval); HL6 = TimeFrameExpand(HL6, cInterval); HL5 = TimeFrameExpand(HL5, cInterval); HL3 = TimeFrameExpand(HL3, cInterval); HL2 = TimeFrameExpand(HL2, cInterval); CCH = TimeFrameExpand(CCH, cInterval); CCL = TimeFrameExpand(CCL, cInterval); CC8 = TimeFrameExpand(CC8, cInterval); CC6 = TimeFrameExpand(CC6, cInterval); CC5 = TimeFrameExpand(CC5, cInterval); CC3 = TimeFrameExpand(CC3, cInterval); CC2 = TimeFrameExpand(CC2, cInterval); return True; } Buy=Sell=Short=Cover=0; if(True) { MaScan(inDaily); MaScan(inWeekly); MaScan(inMonthly); BiBollScan(inDaily); BiBollScan(inWeekly); BiBollScan(inMonthly); FiboScan(inDaily); FiboScan(inWeekly); FiboScan(inMonthly); } Filter = True;