3

我有我想要转换为 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 进行这种转换会更容易吗?

有什么线索吗?

此致,

4

0 回答 0