上面是一位网友的原贴,我作了回复,但因我不需要这么多的数据,所以未做测试,问题未能完全解决。 5分钟数据每天48组,133*48=6384 1分钟数据每天240组,52*240=12480 这么多的数据没必要太执着,不过为了个别有需要的朋友,今天还是花了不少时间下载了一年的5分钟数据,并作全新安装测试。 只要有足够的5分钟数据,15、30、60分钟图本方法都能显示更多。 一、测试方案(只提供了600000这个股一年的5分钟数据) 1、安装最新版的大智慧。 2、解压附件中的dzh2_302.exe到安装目录,运行dzh2_302.exe。 3、在选项中把5分钟数据的保存天数定为500天。 4、在数据管理中心安装数据,选中解压后的600000_0804_0904_m.DAD,执行安装。 5、切换到600000的五分钟图,这时应该能看到超过133天的数据。 二、应用方案(自己找地方下载一年的5分钟数据) 1、备份所需的MIN.DAT后删除(各市场也有的,搞乱了别怪我。哈哈~~)。 2、解压附件中的dzh2_302.exe到安装目录,运行dzh2_302.exe。 3、在选项中把5分钟数据的保存天数定为500天。 4、在数据管理中心安装数据,选中你下载的5分钟数据,如果是分月打包的需要重复多次执行安装。 5、这时所有个股应该能看到超过133天的数据。 有朋友还要求1分钟的解决方案,这个程序好象也行的,但我不会再找这么多的1 分钟数据来做测试了。 _V4.1.9.302_带★的是修改过的 00557176 B8 85000000 MOV EAX,85 ; 85(133) 5分钟限定天数 0055717B 3BC8 CMP ECX,EAX 0055717D 8BD1 MOV EDX,ECX 0055717F EB 17 JMP SHORT 00557198 ; ★ 005571AE 6A 34 PUSH 34 ; 34(52) 1分钟限定天数 005571B0 5A POP EDX 005571B1 8BC8 MOV ECX,EAX 005571B3 3BC2 CMP EAX,EDX 005571B5 EB 18 JMP SHORT 005571CF ; ★ 005E3EA6 68 00020000 PUSH 200 ; ★_其它周期基数 005E3EF2 68 00020000 PUSH 200 ; ★_5分钟基数 005E3F47 68 00040000 PUSH 400 ; ★_1分钟基数 005EF8B8 6BC9 32 IMUL ECX,ECX,32 ; ★_R 005F31CA 6BC9 32 IMUL ECX,ECX,32 ; ★_R 005F39B2 6BC0 32 IMUL EAX,EAX,32 ; ★SH_W 005F3C8F 6BC0 32 IMUL EAX,EAX,32 ; ★SZ_W 005F4757 6BC9 32 IMUL ECX,ECX,32 ; ★_R [ 以上由 yy28 于 2009-4-9 17:17 编辑 ] 因为还有不明白的发短消息问,在这再说一下代码的修改。 _V4.1.9.302 00557176 B8 85000000 MOV EAX,85 ; 85(133) 5分钟限定天数 0055717B 3BC8 CMP ECX,EAX 0055717D 8BD1 MOV EDX,ECX 0055717F EB 17 JMP SHORT 00557198 ; ★ 上面是将限定值送到EAX与在选项中设定的值作判断,如果修改限定值,那么要给定一个值,所以修改跳转应该是比较合理。 005E3EF2 68 00020000 PUSH 200 ; ★_5分钟的初始化基数 大智慧的数据管理是大文件结构,类似于磁盘管理。 它会对数据文件作初始化,这个PUSH 100 相当于生成一个8M的文件。 单就5分钟的MIN.DAT来说,如果用 PUSH 500 那么就会生成一个40M的文件。 这样的话后面的不用修改也能显示大于133天的数据,当然如果有一年的5分钟数据这个文件是大于40M的(约300M),问题是大智慧有10多个市场,其它市场我们不用的就有点浪费,不但占用磁盘,还占用内存。 所以修改下面的“倍频”是比较合理的。 005F31CA 6BC9 32 IMUL ECX,ECX,32 ; ★_R DAY.DAT,MIN.DAT,MIN1.DAT 005F39B2 6BC0 32 IMUL EAX,EAX,32 ; ★_W 005F3C8F 6BC0 32 IMUL EAX,EAX,32 ; ★_W 上面几个 “倍频”指令基本就是(基数*倍数)在需要的时候检查一下在文件中的有效值(实际储存的K线组数),如果有效值大于“倍频”值就用“倍频”值,小于就用有效值。 [ 以上由 yy28 于 2009-4-13 19:05 编辑 ] 还是直接修改基数更方便,那些“倍频”指令不必修改了。 005E3EA6 68 00020000 PUSH 200 ; ★_其它周期基数 005E3EF2 68 00020000 PUSH 400 ; ★_5分钟基数 005E3F47 68 00040000 PUSH 400 ; ★_1分钟基数 [ 本帖最后由 yy28 于 2009-7-26 15:17 编辑 ] |
|