将高/低/关闭数据导入Excel(交易/期货“编码”)

时间:2011-06-22 21:29:06

标签: excel stocks trading

我想导入Excel高/低/收盘数据,比如2009年的小麦合约。

我希望在Python中这样做,但如果有必要,我会学习另一种语言。

我是期货编程的新手。如果上述问题是我的目标,我该如何实现呢?

P.S。我不知道在哪里或如何获取数据。这可能是一个复杂的问题,所以我将它发布在几个Reddits /论坛中。任何人都可以给予的任何见解将不胜感激。

此致 麻雀


进展更新:2011-06-22 16:19

Response from EliteTrader.com user (kanellop)

  

主要的是......哪个是您的数据提供商......?   如果我认为那是Reuters DataLink ......你使用Metastock ......   那么你必须使用功能:转换下载器和   将这些数据传输到Excel。

为了回答他的问题,我使用了ThinkorSwim平台。平台接收并组织数据到price charts such as this one

路透社DataLink和Kanellop推荐的Metastock都不是免费的。因此,让ThinkorSwim 然后支付原始数据Feed似乎有点愚蠢。难道不存在从我的平台上删除历史数据的方法吗?

1 个答案:

答案 0 :(得分:1)

为了获得期货数据,您需要一个交易API(例如T4 API,顺便说一下T4可以免费使用14天),如果您使用的是C#,那么将数据序列化为CSV文件是微不足道的。

它是这样的:

using(StreamWriter sw = new StreamWriter("fileName.csv"))
{
    foreach(Quote q in quotes)// assuming there is a Quote object and a list of quotes
    {
        sw.WriteLine("{0},{1},{2},{3}", q.Open, q.High, q.Low, q.Close);// something of the sort
    }
}

您将遇到的最困难的部分是使用交易API来提取必要的数据,但它附带了示例(您可以在安装目录中找到),因此您应该能够在几天内找到它左右。

更新

与使用商业API相比,您所要求的更具挑战性。这是可能的,你有几个选择,但没有一个是微不足道的:

  1. 直接从屏幕上抓取:创建一个截取屏幕截图并从图像中提取数据的应用程序。我们只是说这不好玩!
  2. 如果是桌面应用程序:您可以拦截进入您正在使用的应用程序的网络流量,即使您能够这样做,如果他们使用安全连接,您可能会遇到大墙(即加密某种方式)。
  3. 如果它是一个Web应用程序:你可以在C#中创建一个浏览器,你可以从客户端得到的HTML页面中抓取数据......如果他们使用的是JavaScript,那么这会变得非常复杂!
  4. 在一天结束时,如果您只是向第三方支付数据,然后实际尝试开发“拦截”来自ThinkOrSwim的数据的软件,那么便宜得多。