从上图我们很清楚地看到一个股票自动交易系统的过程,本人在12年股票操作积累的经验基础上,经过两年来潜心的研究开发,用Delphi开发工具,Access轻量级数据库,初步实现了这个系统。总结整个系统,有以下几个要点:
一、如何设计一个成功率较高的选股公式,用来进行盘中实时选股(难度☆☆☆☆☆)
二、如何读取大智慧股票软件根据选股公式在盘中运行的预警数据(难度☆☆☆)
三、如何读取交易软件中的账户实时数据,获得账户的持股数据(难度☆☆☆)
四、如何设计一个数据库来保存各类基础数据,以备分析用(难度☆☆)
五、如何设计一个操作策略来利用基础数据分析得出买卖结果(难度☆☆☆☆☆)
六、如何根据买卖操作分析结果来自动操作账户(难度☆☆☆☆)
在证券投资领域,自动化交易是一个总的趋势,国外已经普遍使用,国内一般在外汇市场和部份期货市场中采用国外的自动化交易系统,而目前A股市场在这方面基本上是空白。对于个人投资者来说,环境比较复杂,有的是边上班边操作,有的是缺少基本的操作模式,由于缺乏风险控制能力,总体来说盈利的难度比较大;而对于机构投资者来说更需要自动化交易系统,因为资金量庞大,层层风险控制要求更高。只有建立一套完善的自动化交易系统,从选股到买卖操作,从资金管理到仓位控制,一系列的过程都处于一个可控的系统下,才能应对瞬息万变的证券市场,才能在确保资金安全的情况下稳步盈利。
我所向往的自动交易系统,应该是这样的:1)无人值守,至少一个星期内能够自动唤醒电脑、自动启动行情软件和交易软件、自动登录进入交易状态,可定时生成报告发送邮件或短信;2)自动从2000只股票中选择最合适的备选买入;3)自动根据策略分析卖出手上持股;4)自动实现资金管理,合理地分配资金使用量,分仓买卖;5)自动进行风险分析,进行持仓量的控制,通过仓位的调控从而控制风险,行情好时重仓,行情不好时轻仓或空仓。---总的来说就是不需要人参与任何事,只要把电脑开着就行了,该上班的上班、该去玩的就去玩,一切都交给自动交易系统完成。
有需要技术交流的朋友,请点 http://www.hylt.net/vb/showthread.php?t=29597
后面,我将逐步展开讲述以上六个要点。
二、如何读取大智慧股票软件根据选股公式在盘中运行的预警数据
只要用SpyLite这个软件分析一下大智慧的预警窗口,即可看到其类名是SysListView32,这样只要编写一段读取List列表的程序就可以把内容读取出来了,并不难。 三、如何读取交易软件中的账户实时数据,获得账户的持股数据
对于股票交易账户分析和数据读取方法同上述预警数据读取一样,亦非难事。
四、如何设计一个数据库来保存各类基础数据,以备分析用
对于一个软件程序员来说,设计一个简单的数据库是最基本的技能,在此就不罗嗦了。如果一个程序员说自己不会设计数据库,那只有打50大板了。
五、如何设计一个操作策略来利用基础数据分析得出买卖结果
对于自动交易来说,有一个完善的操作策略是至关重要的,也只有这样才能真正发挥自动交易的优势。股票投资过程中人性的最大弱点--贪婪、恐惧、不守纪律,被表现得淋漓尽至,自动交易的目的就是要回避人性的这三大弱点,让人置身度外。当然,中线投资的话就没有必要用自动交易了,因此,自动交易主要是用来进行短线操作的。而短线操作的优点在于灵活机动,快进快出,充分利用资金,积少成多,用无数个小黑马拼装成一个大黑马。分仓操作,不在乎一时、一股的得失;要通过持仓量来控制风险,大盘不好时仓位减少,大盘好时要重仓参与;炒股也是玩概率游戏,要让盈的概率大于亏的概率......
那么,如何才能设计一个完善的操作策略呢,这是无数投资者经常探索的课题,需要不断积累实战经验,不断总结,加以领悟,才能建立起自已的一套操作策略。也许,很多人早已总结出一套自已的操作策略,那剩下来的问题就只是如何在软件系统中实现了。
六、如何根据买卖操作分析结果来自动操作账户
如何自动操作账户买卖,是一个纯软件技术问题,只要通过底层接口编程就可与交易软件连接,并在后台操作即可,软件程序的实现也不是一件难事,稍加研究,解决一些细节问题即可。
以上所述,是开发一个自动交易软件需要解决的六个最基本的问题,因篇幅有限,本文不一而足,点到为止,有心人自会受益非浅。如果要展开深入讲述,则每一个问题都可以形成一篇专门论文,也好,留一些空间让朋友们继续研究讨论。同时,也敬请各位高手对在下指点一二。