我有我想要转换为 OHLCV(开盘价、最高价、最低价、收盘价、成交量)每日、每小时、15 分钟、5 分钟、1 分钟的刻度数据。
我拥有的刻度数据是这样的:
array([[u'2011-08-18 13:37:25', u'10.9', u'0.48990826'],
[u'2011-08-19 13:19:24', u'11.85', u'0.08438819'],
[u'2011-08-19 16:45:01', u'11.5', u'0.4'],
...,
[u'2013-08-24 01:29:27', u'107.97', u'0.18523664'],
[u'2013-08-24 01:29:35', u'107.98', u'4.61659567'],
[u'2013-08-24 01:30:56', u'107.98', u'0.09339562']],
dtype='<U19')
numpy 数组有(日期、价格、数量)。
我使用以下代码将数据保存到 nympy 数组中:
import matplotlib.pyplot as plt
import sqlite3
import numpy as np
database = sqlite3.connect('database.db')
cursor = database.cursor() # Criar o cursor
cursor.execute("select date, price, amount from table order by date asc")
ar=[[r[0], r[1], r[2]] for r in cursor.fetchall()]
database.close()
arnp = np.array(ar)
plt.plot(arnp[:, 1])
plt.ylabel('some...')
plt.show()
我真的不知道进行这种转换的最佳方法是什么。我有 Sqlite 数据库中的数据,使用 SQL 或 Python 进行这种转换会更容易吗?
有什么线索吗?
此致,