算法交易模拟器/基准数据 [已关闭]

algorithmic trading simulator/benchmark data [closed]

提问人:zzzbbx 提问时间:4/25/2011 最后编辑:Mike Penningtonzzzbbx 更新时间:8/6/2015 访问量:10675

问:


我们不允许寻求书籍、工具、软件库等推荐的问题。您可以编辑问题,以便用事实和引文来回答。

3年前关闭。

我对玩算法交易策略很感兴趣。有谁知道是否存在我可以离线玩的模拟器或基准数据(无需实际进行任何投资)?

标杆 金融 模拟器

评论


答:

4赞 repecmps 4/28/2011 #1

这是您要查找的数据类型吗?俄亥俄州财政部,财务数据查找器

此页面也可能有所帮助:雅虎财经下载,HTTP 接口参数

还有这个: mathfinance.cn:免费财务资源

不是离线的,但仍然是一个很好的链接,可以提供给其他读者:谷歌财经API

我希望我正确地理解了这个问题。

76赞 Mike Pennington 5/2/2011 #2

这个问题很宽泛;事实上,没有提到你对哪些乐器感兴趣。例如:

目前,我假设你对股票感兴趣......如果是这样,请查看 Ninja Trader,它免费提供这些功能。您可以从雅虎财经获得免费的日终股票数据,这对于长期交易时间表来说已经足够了;请记住,交易周期越短,您的数据分辨率就越严格。

如果您愿意将数千美元存入一个交易账户,任何数量的经纪商都很乐意向您发送实时市场日内市场信息;但是你不需要在账户里存钱进行模拟交易(至少在我的经纪人那里)。我认为对程序员来说最灵活的经纪商是盈透证券。您可以通过 API 从他们那里获取亚秒级数据,只要了解他们不会为您提供 Tick 级别的粒度;他们总结了他们的提要,具体细节各不相同,所以如果你有严格的粒度要求,最好只和他们谈谈。至于离线模拟,您可以使用 Ninja Trader、盈透证券和许多其他在线经纪商来做到这一点(请参阅哪些在线经纪商提供 API?

奖励材料

由于您提供 +200,我将分享更多您可以使用的内容......保留它或扔进垃圾桶,以获得它带来的任何价值。

交易时间框架

一般来说,时间越短,交易就越困难,持续赚钱就越困难。如果您不确定从哪里开始制定时间表,请一次查看几天或几周的交易周期;然后,如果您看到太多机会与您擦肩而过,请将您的系统细化到更短的时间线。要考虑的另一件事是您希望触摸此代码和调整算法的频率。一般规则是,随着交易周期的缩短,您需要对算法进行更多的校准和维护。找到一个算法交易者,他编写了一个很好的波段交易平台,该平台在过去十年中一直按原样工作,这并不罕见。另一方面,日内交易算法往往需要根据市场条件的变化进行更多的照顾和喂养。

交易风格

与时间线密切相关的是您的交易策略。你是:

贸易管理/心态

交易管理是一个相当大的话题,如果您潜伏在像 Elite Trader 这样的交易委员会周围,您会发现这个问题得到了深入解决。虽然在关于自动交易平台的同一线程中讨论其中的一些内容听起来可能不合适,但我相信你会同意你的假设和态度有阴险的方式渗入你的代码。我将分享一些我脑海中的事情:

  1. 成功主要是防止交易亏损。好的交易会照顾好自己。
  2. 始终以止损进行交易。传统观点认为,“你的第一个损失就是你最小的损失”。如果事情开始向南发展,想办法在保持之前大部分利润的同时始终如一地退出;抱着失败者是成为水煮青蛙的捷径。
  3. 没有“太高”或“太低”这样的东西。市场以从众心理运行,并不在乎你认为它应该做什么。
  4. 与“3”点密切相关:与长期趋势交易。与趋势作斗争(被亲切地称为“逆势”)对天生的逆势者来说可能听起来很有吸引力,但你需要做得非常好。交易就足够了,无需试图逆势而上。
  5. 在美联储市场公告后的一小时内进行交易非常困难;我认为退出市场会更好。快速获利看起来很诱人,但这是专业人士喜欢吃业余交易者的地方;残酷的逆转可能会在几分钟内发展。
  6. 避免保证金交易,除非您有一种经过验证的技术,并且您已经用至少几年的数据进行了回溯测试。
  7. 常规交易的前三分钟和最后一小时可以看到波动性的快速变化。
  8. 关于获利回吐,“公牛被喂饱,猪被屠宰”
  9. 如果您发现自己没有获利,请考虑评估您的交易频率;将您的交易减少到最低限度是成功的关键,否则,垃圾交易的滑点、佣金和费用将吞噬您的利润。
  10. 由于计算延迟/处理时间和部分订单成交,限价单的管理相当具有挑战性,并且非常接近细节;算法交易者有更大的鱼要炸。

编码

  1. 在代码中记录您做出的每个数据点和决策;三个日志记录级别对我有用。交易是一项不精确的任务,微小的变化可能会破坏您以前盈利的算法。如果有什么东西爆炸了,你需要一种方法来比较有效的方法。
  2. 脚本语言的原型;如果速度很慢,以后可以随时卸载到编译器。我认为 python 非常适合量化金融......成熟的单元测试,C / C++集成,numpy,pyplot和pandas是我的赢家。
  3. 更多熊猫插头...(pandas 视频),另请参阅:在 Python 中计算复合返回序列
  4. 我从 plain-ole csv 开始,但我正在迁移到 HDF5 以进行刻度数据存档
  5. 交易模拟具有欺骗性:模拟交易不会因低流动性或对工具的高需求而成交问题;根据市场情况,我的真实交易可能会看到从我发送订单到我获得成交的时间延迟两到三秒。模拟交易也不会出现数据中断;请务必在您的计划中包括突然的数据丢失(以及如何恢复)。低成本经纪人往往会遭受更多的故障和停电,但如果您的时间范围更长,这可能是您可以忽略的。

法律

The information set forth herein has been obtained or derived from sources believed by author to be reliable. However, the author does not make any representation or warranty, express or implied, as to the information’s accuracy or completeness, nor does the author recommend that the attached information serve as the basis of any investment decision. This data has been provided to you solely for information purposes and does not constitute an offer or solicitation of an offer, or any advice or recommendation, to purchase any securities or other financial instruments, and may not be construed as such. By using any of this information, you expressly agree that all risks associated with the performance and quality of the information is assumed solely by you. The author shall not be liable for any direct, indirect, incidental, special or consequential damages arising out of the use of or inability to use the information, even if the author has been advised of the possibility of such damages. The information is made available by the author "as is" and "with all faults".

4赞 tyronegcarter 5/5/2011 #3

I use AMIBroker. Its primarily used for backtesting algorithmic trading strategies. It is very fast and can download and get data from a variety of free sources.

0赞 Gabriel 9/7/2013 #4

One alternative would be PyAlgoTrade (http://gbeced.github.io/pyalgotrade/). Its an open source Python library to backtest trading strategies.

评论

0赞 Mike Pennington 10/3/2013
Thanks for the link, but please disclose your affiliation with the library in compliance with Stack Overflow's policy on self-promotion
4赞 Rajandran R 11/16/2014 #5

Try with Cloud based backtesting Engines like Quantconnect and Quantopian

Quantopian is a python based IDE where you can write strategies and backtest online. You can do simulation trades as well as real trades with Interactive Broker. Quanconnect is similar to Quantopian and they used .Net Based IDE and you can run simulation trades and live trader with the discount broker tradier.

1赞 Reed Jessen 8/6/2015 #6

QuantGo lets you rent high frequency data sets rather than buying them. I really like it because it's only a couple hundred per month instead of thousands.

Quandl has some good free data sets if you are only interested in trading at longer time intervals. Their stock data API is pretty slick (link).