怎样用Python写一个股票自动交易的程序
前期的数据抓取和分析可能python都写好了,所以差这交易指令接口最后一步。对于股票的散户,正规的法子是华宝,国信,兴业这样愿意给接口的券商,但貌似开户费很高才给这权利,而且只有lts,ctp这样的c++接口,没python版就需要你自己封装。
方法二
是wind这样的软件也有直接的接口,支持部分券商,但也贵,几万一年是要的。
方法三
鼠标键盘模拟法,很复杂的,就是模拟键盘鼠标去操作一些软件,比如券商版交易软件和大智慧之类的。
方法四
就是找到这些软件的关于交易指令的底层代码并更改,不过T+1的规则下,预测准确率的重要性高于交易的及时性,花功夫做数据分析就好,交易就人工完成吧
想编写一个股票自动交易软件,可以读取通达信实时数据,操作券商交易软件自动下单,要学哪些知识、语言?
基本比较难,可以直接使用别人做好的软件,比如金牛盯盘、金鹰股票自动交易软件、SNB等
怎样用 Python 写一个股票自动交易的程序
概率炒股法:
下面方法买涨不买跌,同时避免被套,缺点,手续费比较高,但完全可以吃完整个牛市,熊市不会被套。
用python获取股票价格,如tushare,如果发现股票当天涨幅在大盘之上(2点30到2点50判断),买入持有一天,下跌当天就别买,你可以用概率论方法,根据资金同时持有5支,10支或20支,这样不怕停盘影响,理论上可以跑赢大盘。好处:避免人为冲动,缺点手续费高
还有一种是操作etf,如大盘50etf,etf300,中小板etf,创业板etf,当天2.30分判断那个etf上涨就买入那支,买入涨幅最大的,不上涨什么都不买,持有一天,第二天上午判断一下,如果下跌超过2%卖掉。好处:不会踩地雷,缺点:涨随大盘,我比较推荐这个方法,外围的风险比较小。
具体的python程序我有,比上面复杂,有止赢止损位,资金管理,监视管理,我用在实盘当中,自动化下单也已解决。
我觉得程序的成败不在一日之功,在于长期稳定赚钱,如运行十年,过多的数据分析也无意义,因为预测未来永远是一个概率问题,不是百分之百确定的,如果你的程序能在长时间多次数上战胜市场,你的程序就能趋向大数定理。
否则一时的回撤会让你停止程序自动执行,而无法趋向大数定理中的稳定概率。
如果有一个程序能百分之99确定,那么基本上肯定是分析了内幕交易数据,和徐x一样,每次重仓一支股,这种手法应该是得到了内幕,也就不需要什么程序来交易了。
巴菲特的交易模式实质上也是内幕交易的一种,因为他靠的是外在分析,实地考查,估计这是寻找内幕的手段,现在做大了,这种效果就不灵了,收益也下降了,美国经济也下滑了,所以巴菲特的未来是必定是暗淡的,因为内幕交易的池子有限,资金量大了不好操作。
想想如果巴菲特生在苏联,印度,日本等等其他国家,他可能在街头要饭,美国二战后经济环境加倾向内幕造就了他,而不是炒股技术有多神。所以巴菲特不屑于程序化交易。
巴菲特及不少美国式的股神实际上是幸存者偏差造成的,你想想苏联的股神在那里?为什么一个都没有?(“沉默的数据”、“死人不会说话”)
我觉得未来真正能成股神必定是程序,不是人,因为一个好的程序策略可以用一辈子,实现长期稳定增长,当然前提是社会经济环境稳定,不会出现类似苏联的动乱,也不会出现日本式的恶性通胀(对货币m2有点担心)。
太多的股票让股民每天沉浸在选股的游戏中,选股造就了券商的行情软件,实际上很多数据都是没有用的,所有的关键是按操作方法永远执行下去才能趋向稳定概率,否则今天换一种明天换一种方法,今天按kdj,明天按macd,后天按boll,大后天按ddx,大大后天按自编指标,多条件选股,最后钱都交手续费或止损不及时被套牢了。这时券商收佣金的目的也就达到了,每年券商收的佣金比股市分红要高。不管行情如何,只要多请几个股评员,总有方向说对的,玩个概率游戏让大家频繁交易,券商的收入只会增不会降。所以千万别信股评,玩的是概率游戏,如同预测硬币的正反,请十个股评师必定有个能预测三次正确的神股评。你信这个神股评,后面可能是三次都不准,呵呵。所以券商和行情软件总会在收盘或午休时弹出各种消息或评价,说实在的这种东西没有一分钱的价值。可能早就写好了上涨的说法是模块a,下跌的说法是模板b,平市的说法是模板c,只是填上当天数据即可,都是八股文,都是马后炮,一样的事件上午说成是上涨理由,下午说成是下跌理由。
程序的策略经过测试后的关键在于稳定执行,长期稳定执行,长期长期稳定稳定执行执行,重要的事说三遍。
人性无法战胜的弱点是执行力,小学生都懂的天天向上,每日进步,世间有几人能做到?而稳定几十年执行更是难上加难,如同背英语单词一样,理论上一天背一百个,一百天就可以一万词,但十年,二十年过去了,你可能还是三千词以下。
用程序的目的就是百分之百执行到位,没有折扣,真正战胜人性的弱点,和t+1没有关系。
另外通过一定方法降低手续费也可以使你的资金活得更久,如把上面的日模型改为周或月模型。
设计自动交易股票、期货等金融产品的程序,有可能一个人完成么?
按你这样说的,基本是不可能
先假定你是位炒股高手,炒股操作上没有问题
首先你要先学习编程,调试程序 这是为你的自动化交易打程序基础
然后你要学习股票的指标编写,这样才能以后与你自编程序对接
这已经是很大的学习与工作量了
最重要的一点,自动化交易的软件不可能保证是嬴利的,这点你应该不用去质疑,因为太程序化的炒股,嬴的了一时,嬴不了一世。不管是卖多少钱的收费炒股软件,都是忽悠人的。能编出这么好程序的人,他不会有时间也没有必要去推销软件的,反正都是为了赚钱,那编程者为啥不自个先赚尽天下财富呢
不考虑指标的编写,我只是说实现自动化。写指标的话懂一些,所以我更关心的是交易自动化。最好能把程序委托在“网络云”里计算,这样我不需要开电脑和购置服务器就可以实现自动交易了。。。
交易自动化完成是非常简单的事情
只是成交后的输嬴问题就不容易用程序来控制了
怎样用 Python 写一个股票自动交易的程序
1,http://www.python.org/download/ 下载windows安装包,
2,python环境变量配置
(1)设置环境变量:我的电脑-右键-属性-高级-环境变量 在Path中加入
;c:\python26 (注意前面的分号和路径)
(2)此时,还是只能通过"python *.py"运行python脚本,若希望直接运行*.py,只需再修改另一个环境变量PATHEXT:
;.PY;.PYM
3,测试是否安装成功
cmd进入命令行 输入python –v 若是输出版本信息,则表示安装完毕
4,建一个hello.py
print ("hello world")
5,cmd 进入命令行 找到文件路径 hello.py
会输出"hello world"
6,接受用户输入
x= input("x:")
y= input("y:")
print (x * y)
print("我开始学习python了,要加油啊!")