我在数据框中有 Apple 的 1 分钟股票信息,如下所示:
Local time Open High Low Close Volume
0 2018-04-19 15:00:00 46.707 46.708 46.687 46.687 0.0150
1 2018-04-19 15:01:00 46.688 46.688 46.667 46.688 0.0320
2 2018-04-19 15:02:00 46.687 46.728 46.677 46.728 0.0091
3 2018-04-19 15:03:00 46.727 46.728 46.708 46.717 0.0332
4 2018-04-19 15:04:00 46.708 46.718 46.677 46.677 0.0243
Run Code Online (Sandbox Code Playgroud)
我已使用将“当地时间”列转换为日期时间pd.to_datetime(df['Local time'])
。我想单独度过每一天来回测策略。但我不知道如何一次循环遍历由日期更改定义的 df 块。我尝试使用一些 for 循环,但它们不起作用,因为交易的分钟数在某些日子明显不同(不是 390):
index = 390 #Number of traded minutes on most days
rows = 286155 #number of rows in the dataset …
Run Code Online (Sandbox Code Playgroud) 我想在 Python 中获取股票数据进行一些分析。
我想对许多股票进行分析,不是像 AAPL 这样的单一股票,而是像标准普尔 500 指数。具体来说,美国股票的收盘价和其他信息,如调整后的价格、行业等。
我该怎么做?
如果这个问题有点太简单,我很抱歉。我试图找到数据,但没有一个好的解决方案。
我试过quandl
,但似乎只支持通过股票行情获取数据,也是如此Yahoo finance
(来自https://www.quora.com/Using-Python-whats-the-best-way-to-get-stock-data)。一种可能的来源是Quantopian
,但它仅支持在其在线笔记本中进行分析。现在我正在尝试Alph Advantage
当我看到其他人的项目时,它只是一个csv。我是否错过了 quandl 或 Yahoo Finance 中的某些内容?或者我是否需要从他们那里手动获取 SP 500 的每个股票代码?
谢谢!
我正在尝试使用Matplotlib和Numpy,但这并不容易.
我正在做一个迷你项目,开始处理Matplotlib和Numpy,但我被困了......
这是代码:
# Modules
import datetime
import numpy as np
import matplotlib.finance as finance
import matplotlib.mlab as mlab
import matplotlib.pyplot as plot
# Define quote
startdate = datetime.date(2010,10,1)
today = enddate = datetime.date.today()
ticker = 'uso'
# Catch CSV
fh = finance.fetch_historical_yahoo(ticker, startdate, enddate)
# From CSV to REACARRAY
r = mlab.csv2rec(fh); fh.close()
# Order by Desc
r.sort()
### Methods Begin
def moving_average(x, n, type='simple'):
"""
compute an n period moving average.
type is 'simple' | 'exponential'
"""
x …
Run Code Online (Sandbox Code Playgroud) 是否有可用于运行监控股票市场活动的脚本的软件平台?
我想编写一个脚本,以便在某些市场条件发生时向我发送警报.理想情况下,它还具有执行交易的能力.
我不是在寻找任何超级复杂的东西,而且我不需要昂贵的实时数据.我想做一些简单的事情:
If "SDY" drops to 5% below the DOD, then sell 50% of "DOD" to buy SDY
Run Code Online (Sandbox Code Playgroud)
编辑
看起来ETrade提供API.并不像我想要的那样简单,但这是针对任何对这个问题感兴趣的人:https: //us.etrade.com/e/t/activetrading/api
以下是我使用YQL查询,使用雅虎融资获取数据,我使用的是印度NSE交易股票的符号,BSE
http://query.yahooapis.com/v1/public/yql?q=select * from yahoo.finance.quotes where
symbol in ("AIAENG.NS","ATULAUTO.NS")&env=http://datatables.org/alltables.env&format=json
Run Code Online (Sandbox Code Playgroud)
奇怪的是,这个查询总是返回所有字段的空数据(无效数据),即使我使用的符号是正确的,并且可以在Yahoo财务上用于查询详细信息.实际上同样是另一个印度交换BSE,各自的符号AIAENG.BO,ATULAUTO.BO
但是,如果我用"YHOO","AAPL","GOOG","MSFT"等美国纳斯达克代码替换它,它的工作没有问题.
让我知道如何在 SQL 中查找股票数据中的转折点。例如我们有以下数据列和 N 行:
Date |Price|
20150101 | 100 |
20150102 | 50 |
20150103 | 80 |
.
.
.
201708027 | 200 |
Run Code Online (Sandbox Code Playgroud)
9月6日发布
我正在一个项目中,该项目要显示Google Finance API的多只股票的实时价格以及诸如以下信息 change
change in %
volume
Timestamp of data
和
,,- 等少数比率ROI/E
,这完全是可选的。(如果可用,那么令人惊奇的是,如果不是,那么仍然不是很多问题。)ROA
Net-profit-margin
就效率而言,为每只股票发送一个请求是荒谬的。
我尝试了多种方法,例如
https://finance.google.com/finance?q=NSE:ABAN,NSE:ABB&output=json
Run Code Online (Sandbox Code Playgroud)
这给了我股票的基本信息,但没有实时价格。
https://finance.google.com/finance?q=NSE:ABAN,ABB&output=json
Run Code Online (Sandbox Code Playgroud)
该查询仅确认存在名称为ABAN的股票。
我对NSE(印度国家证券交易所)的数据感兴趣。我已经解决了2-3个问题,但无法获得太多信息,雅虎也停止了对印度市场的支持,因此该选择也已被排除在外。
该项目是学术性项目,因此,如果可能,我希望获得免费的数据源。
对此的任何帮助将不胜感激。
我在谷歌搜索了2天,但我仍然无法获得一个适当的API,我可以使用它来获取数据.我找到了一个API
https://finance.google.com/finance/info?client=w&q=BSE:YESBANK
Run Code Online (Sandbox Code Playgroud)
我正在获得共振数据,但数据不正确.我client=w
在上面的URL中给出了错误
任何人都可以知道获取BSE数据的任何API吗?即使它是付费服务我也是...
我想在简单的html页面上显示NSE和BSE的所有股票价格.
我从谷歌获得的信息,我可以调用已经存在的任何网络服务,他们将以json形式提供所有信息.然后我必须解析那个jason代码.
现在我希望有人为我提供链接,我可以通过该链接调用webservice.让我知道如何使用jQuery调用该Web服务.我如何解析输出json数据.如果任何人可以给我示例代码,那么它将是最好的..
非常感谢你帮助我.. :)
因此,基本上,我想在时间序列折线图的一定数量的点上绘制一条弯曲的平均线。像这样:
我希望它跨越图表的整个长度,但是我无法弄清楚如何计算起点和终点,因为(我认为)平均值将是每个部分中间的一个点。查看带有移动平均线的股票图表,您可以看到我想要实现的目标:
我首先根据一段时间将数据数组分成多个块,以计算平均值。所以,如果我开始:
[
{ time: 1, value: 2 },
{ time: 2, value: 4 },
{ time: 3, value: 5 },
{ time: 4, value: 7 },
]
Run Code Online (Sandbox Code Playgroud)
我到达:
var averages = [
{
x: 1.5,
y: 3,
},
{
x: 3.5 (the average time)
y: 6 (the average value)
},
]
Run Code Online (Sandbox Code Playgroud)
这是我尝试过以不完整的行结束的方法,该行不从图表的开头开始,也不在图表的结尾处停止,而是在图表的第一个平均时间加星号和结尾:
ctx.moveTo((averages[0].x), averages[0].y);
for(var i = 0; i < averages.length-1; i ++)
{
var x_mid = (averages[i].x + averages[i+1].x) / 2;
var y_mid = (averages[i].y + averages[i+1].y) …
Run Code Online (Sandbox Code Playgroud) 我只想购买 NSE 股票。我用来获取带有 python 符号的多个股票报价。
代码:
from nsetools import Nse
nse = Nse()
def get_current(stock):
return nse.get_quote(stock)
for i in stocks:
data = get_current(i)
Run Code Online (Sandbox Code Playgroud)
这没有帮助。请帮忙
stockquotes ×11
python ×5
stock ×2
stocks ×2
api ×1
canvas ×1
datetime ×1
finance ×1
financial ×1
javascript ×1
jquery ×1
json ×1
matplotlib ×1
numpy ×1
pandas ×1
sql ×1
trading ×1
web-services ×1
yahoo-api ×1