[关闭]
@Channelchan 2018-10-20T13:02:59.000000Z 字数 4690 阅读 7258

getOandaData

API说明: http://developer.oanda.com/rest-live/rates/#retrieveInstrumentHistory

历史数据下载

1.导入模块

2.选择数据类型

3.将数据转换格式

4.改变数据名称

5.设置新的索引

1.导入模块(request、json、pandas)

2.数据类型

symbol为品种.

count为返回的蜡烛数,如果没有指定,数量将默认为500,最大可接受值数是5000。

candleFormat 为可选的蜡烛参数表示,“midpoint” - 基于中点的参数。“bidask” - 基于买/卖的参数,如果未指定candleFormat参数,candleFormat的默认值为“bidask”。

granularity为可选每个参数表示的时间范围。
秒可选为S5、S10、S15、S30、M1;

分钟可选为M2、M3、M4、M5、M10、M15、M30、H1;

小时可选为H2、H3、H4、H6、H8、H12、D.

其中D为1day,W为1week,M为1month.

url中自行修改start的时间,其中T15为15点,表示收集当天15点以后的数据。
获取数据后,再将数据转换为dataframe的格式。

若收集一定区间的数据,在末端加上&end=

  1. import requests
  2. import json
  3. import pandas as pd
  4. symbol = 'XAU_USD'
  5. count = '50'
  6. candleFormat = 'midpoint'
  7. granularity = 'H1'
  8. url = "https://api-fxtrade.oanda.com/v1/candles?instrument=%s&count=%s&candleFormat=%s&granularity=%s&start=2018-10-15T15"\
  9. %(symbol,count,candleFormat,granularity)
  10. response = requests.get(url)
  11. doc=json.loads(response.content)
  12. data = pd.DataFrame(doc["candles"])

3.将数据转换为指定的日期格式

  1. data["datetime"] = data["time"].apply(pd.to_datetime)

4.改变数据名称

  1. delMid = {"closeMid": 'close', "highMid":'high', 'lowMid':'low', 'openMid':'open'}

5.设置新的索引

  1. data.rename_axis(delMid,1).set_index('datetime')
close complete high low open time volume
datetime
2018-10-15 15:00:00 1228.3030 True 1228.9760 1226.1600 1228.3865 2018-10-15T15:00:00.000000Z 2963
2018-10-15 16:00:00 1227.0490 True 1228.9860 1226.2720 1228.2020 2018-10-15T16:00:00.000000Z 1863
2018-10-15 17:00:00 1225.6760 True 1227.3430 1224.9960 1227.0045 2018-10-15T17:00:00.000000Z 1512
2018-10-15 18:00:00 1226.0790 True 1227.2200 1225.0320 1225.5595 2018-10-15T18:00:00.000000Z 1224
2018-10-15 19:00:00 1225.4800 True 1226.9960 1224.9320 1225.9790 2018-10-15T19:00:00.000000Z 958
2018-10-15 20:00:00 1227.0040 True 1227.5160 1225.3980 1225.4385 2018-10-15T20:00:00.000000Z 490
2018-10-15 22:00:00 1227.7310 True 1227.7620 1226.9310 1227.1385 2018-10-15T22:00:00.000000Z 274
2018-10-15 23:00:00 1226.8705 True 1227.8490 1226.7980 1227.8450 2018-10-15T23:00:00.000000Z 311
2018-10-16 00:00:00 1228.2735 True 1228.7040 1226.4830 1226.7570 2018-10-16T00:00:00.000000Z 816
2018-10-16 01:00:00 1228.0805 True 1228.6700 1227.6300 1228.3765 2018-10-16T01:00:00.000000Z 847
2018-10-16 02:00:00 1226.0145 True 1228.0770 1225.6870 1227.9865 2018-10-16T02:00:00.000000Z 1174
2018-10-16 03:00:00 1226.6410 True 1226.7410 1225.5200 1225.9730 2018-10-16T03:00:00.000000Z 608
2018-10-16 04:00:00 1226.0050 True 1226.7100 1225.8285 1226.5975 2018-10-16T04:00:00.000000Z 396
2018-10-16 05:00:00 1225.5750 True 1226.4890 1225.1180 1225.9600 2018-10-16T05:00:00.000000Z 642
2018-10-16 06:00:00 1226.4680 True 1227.9580 1225.4680 1225.6160 2018-10-16T06:00:00.000000Z 1429
2018-10-16 07:00:00 1229.4660 True 1229.8920 1226.1660 1226.4800 2018-10-16T07:00:00.000000Z 2174
2018-10-16 08:00:00 1228.8635 True 1230.3000 1228.7285 1229.3675 2018-10-16T08:00:00.000000Z 1130
2018-10-16 09:00:00 1228.5110 True 1229.1860 1226.2870 1228.9065 2018-10-16T09:00:00.000000Z 1488
2018-10-16 10:00:00 1229.6050 True 1230.1560 1227.9040 1228.5520 2018-10-16T10:00:00.000000Z 1321
2018-10-16 11:00:00 1230.1090 True 1230.4190 1228.9220 1229.5140 2018-10-16T11:00:00.000000Z 1157
2018-10-16 12:00:00 1230.2370 True 1232.4760 1228.2480 1230.2020 2018-10-16T12:00:00.000000Z 2558
2018-10-16 13:00:00 1231.2450 True 1232.5380 1228.3200 1230.1945 2018-10-16T13:00:00.000000Z 4052
2018-10-16 14:00:00 1228.9855 True 1231.4270 1228.8920 1231.2905 2018-10-16T14:00:00.000000Z 2785
2018-10-16 15:00:00 1228.3590 True 1229.3225 1227.3780 1229.0275 2018-10-16T15:00:00.000000Z 2066
2018-10-16 16:00:00 1228.4490 True 1229.0350 1228.1990 1228.4545 2018-10-16T16:00:00.000000Z 940
2018-10-16 17:00:00 1226.1200 True 1229.1520 1225.8780 1228.4035 2018-10-16T17:00:00.000000Z 1587
2018-10-16 18:00:00 1225.9080 True 1226.8030 1225.3980 1226.0730 2018-10-16T18:00:00.000000Z 795
2018-10-16 19:00:00 1224.8665 True 1226.7880 1224.3550 1225.8600 2018-10-16T19:00:00.000000Z 532
2018-10-16 20:00:00 1224.9235 True 1225.3680 1223.5080 1224.8225 2018-10-16T20:00:00.000000Z 627
2018-10-16 22:00:00 1225.4665 True 1225.7320 1224.0390 1224.3415 2018-10-16T22:00:00.000000Z 350
2018-10-16 23:00:00 1225.0595 True 1225.9770 1224.9790 1225.3655 2018-10-16T23:00:00.000000Z 297
2018-10-17 00:00:00 1225.2670 True 1225.8820 1224.6020 1225.0150 2018-10-17T00:00:00.000000Z 631
2018-10-17 01:00:00 1224.3930 True 1225.3080 1223.5840 1225.3080 2018-10-17T01:00:00.000000Z 1004
2018-10-17 02:00:00 1222.5315 True 1224.4090 1222.0720 1224.3495 2018-10-17T02:00:00.000000Z 771
2018-10-17 03:00:00 1221.9085 True 1222.6940 1221.6410 1222.5720 2018-10-17T03:00:00.000000Z 511
2018-10-17 04:00:00 1222.0625 True 1222.7500 1221.7440 1222.0090 2018-10-17T04:00:00.000000Z 361
2018-10-17 05:00:00 1222.7555 True 1223.1010 1220.6680 1222.1540 2018-10-17T05:00:00.000000Z 753
2018-10-17 06:00:00 1223.5270 True 1223.7320 1222.3950 1222.6580 2018-10-17T06:00:00.000000Z 897
2018-10-17 07:00:00 1221.9540 True 1224.0830 1221.8140 1223.4345 2018-10-17T07:00:00.000000Z 1078
2018-10-17 08:00:00 1224.6725 False 1225.9060 1221.9640 1222.0525 2018-10-17T08:00:00.000000Z 1693
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注