所以我对E*TRADE感到非常厌恶,作为一名开发人员,我很乐意找到一个提供API的在线经纪人.能够编写我自己的交易工具,甚至修改现有的交易工具会很棒.
根据我迄今为止的研究,我只找到了一个选项.Interactive Brokers提供多语言API(Java/C++/ActiveX/DDE),并且具有相当不错的佣金率.我想确保没有任何其他选择,我应该考虑.有任何想法吗?
更新:根据目前为止的答案,这是一个快速列表......
我一直在阅读很多关于低延迟金融系统的信息(特别是自着名的企业间谍案以来),从那以后我就一直想到低延迟系统.有一百万个应用程序可以使用这些人正在做的事情,所以我想更多地了解这个主题.问题是我找不到任何关于这个主题的有价值的东西.任何人都可以在低延迟系统上推荐书籍,网站和示例吗?
我有兴趣为外汇市场写一个小型自动交易员.我想选择自己的工具(平台和编程语言),我只需要找到一个合适的API来查询数字并接受交易操作的请求.我想理想的是一些带有XML API或类似功能的Web服务.
有任何想法吗?
我从来没有使用分布式缓存/ DHT,如memcached,jboss缓存,ehcache等.我想知道哪些,如果有的话,适合我的使用.
首先,我不是在做Web应用程序(因为大多数这些项目似乎都面向Web应用程序).我为金融交易公司编写服务器(实际上是订单管理系统).服务器本身并不复杂.他们需要接收信息(市场数据,订单,执行等)将它们发送到目的地,同时可能转换其中一些消息.
我正在研究这些产品以解决以下问题:
安全的服务器状态存储库.我宁愿将我的应用程序的逻辑构建为一堆变换器(类似于Apache Camel)并将状态存储在"安全"的位置
应该分发这个存储库:如果这些数据中的一个存储崩溃,那么应该有一个或两个存储崩溃,我应该能够无缝切换到它们
这个存储库应该很快.这里使用单位数毫秒,换句话说,使用/处理此数据的系统是自动化系统,而不是人类点击链接.该系统需要具有高吞吐量和低延迟.通过在进程外发送我的数据,我必然会降低性能,但我试图平衡绝对原始速度和绝对数据保护.
这个存储库应该是安全的.与几个在线备份相似,该系统需要将数据写入磁盘(可能多于一个磁盘).
我真的想停止编写自己的"交易服务器".我是否正确地研究诸如jboss cache,ehcache等项目?
谢谢
我想为Linux和Windows制作一个免费的开源C++应用程序,它将创建实时股票市场图表(即它们经常刷新).
请你能就这些问题给我一些指示:
有些事情需要注意:
我目前正在研究交易产品的一个组件,它允许定量或策略开发人员编写自己的自定义策略.我显然不能让他们用本机编译的语言编写这些策略(甚至是编译为在vm上运行的字节码的语言),因为他们的开发/测试周期必须是几分钟.
到目前为止,我已经看过lua,python,ruby并且真的非常喜欢它们,但仍然发现它们对我的目标用户来说有点"低级别".我是否需要以某种方式编写自己的解析器+解释器来支持最少支持循环,简单算术,逻辑表达式评估的语言,或者您是否还有其他建议?提前致谢.
I want to process stock level-2 data in pandas. Suppose there are four kinds data in each row for simplicity:
Which can be easily defined as a structured dtype in numpy:
dtype = np.dtype([
('millis', 'int64'),
('last_price', 'float64'),
('ask_queue', ('int32', 200)),
('bid_queue', ('int32', 200))
]) …Run Code Online (Sandbox Code Playgroud) 嘿大家,我想知道如何在python中开始编写Etrade交易股票的界面.我正在尝试制作一个自动交易机器人,但是没有api公开可用于Etrade的自动交易.提前致谢.^^
谁能解释FIX和FAST之间的区别?什么时候应该使用FIX,何时应该使用FAST?
我正在构建一个交易策略,我被困在两个关键领域.当使用Stoch和MACD时quantmod,我试图创建一个信号,当慢速随机交叉快速随机(1),反之亦然(-1),并在(0)之间平坦.除了列名MACD和Signal之外,MACD代码是相同的.最后,当所有三个信号等于1,-1,0时,我试图合并三个信号以创建主信号.
library(quantmod)
####################
## BOLINGER BANDS ##
####################
getSymbols("SPY", src="yahoo", from="2013-01-01", to="2015-05-01")
x <- na.omit(merge(SPY, BBands(Cl(SPY))))
x$sig <- NA
# Flat where Close crossed the mavg
x$sig[c(FALSE, diff(sign(Cl(x) - x$mavg), na.pad=FALSE) != 0)] <- 0
x$sig[Cl(x) > x$up] <- -1 # short when Close is above up
x$sig[Cl(x) < x$dn] <- 1 # long when Close is below dn
x$sig[1] <- 0 # flat on the first day
x$sig[nrow(x)] <- 0 # flat on the last day
# …Run Code Online (Sandbox Code Playgroud)