python获取股票实时数据.请教python量化交易时用到的股票每天逐笔交易数据如何爬取?
股票市场是一个需要长期持有的市场,投资者需要有耐心和毅力,不断学习和调整自己的投资策略,才能在市场中获得长期的稳定回报。接下来,帮企客带大家认识并深入了解python获取股票实时数据,希望能帮你解决当下所遇到的难题。
- 1、请教python量化交易时用到的股票每天逐笔交易数据如何爬取?
- 2、混合型\股票型基金有什么办法可以实时查看涨跌走势? 和指数型基金一样。
- 3、怎么用python计算股票
- 4、有A股的分时交易数据API接口吗?
本文分为以下多个解答,欢迎阅读:
请教python量化交易时用到的股票每天逐笔交易数据如何爬取?
优质回答首先,打开期货交易软件,登录自己的交易账户。选择相应的期货合约,进入交易界面。
其次,找到“成交记录”或“逐笔成交”等相关功能按钮。在一些交易软件中,这个按钮可能位于交易界面的底部或侧边栏。
然后,点击“成交记录”或“逐笔成交”按钮,进入成交记录页面。在这个页面上,你可以看到最近的成交记录列表。
接下来,找到“导出”或“导出成交明细”等按钮。这个按钮通常位于成交记录页面的上方或下方。
然后,点击“导出”或“导出成交明细”按钮,选择导出文件的格式和保存路径。一般来说,我们可以选择导出为Excel或CSV格式的文件,这样可以方便后续的数据处理和分析。
最后,点击“确认”或“导出”按钮,等待软件完成导出过程。导出的取决于成交记录的数量和电脑性能等因素。
一旦导出完成,你就可以在选择的保存路径中找到导出的文件。通过打开这个文件,你就可以查看和分析期货逐笔成交明细了。
导出的期货逐笔成交明细文件通常包括以下信息:交易日期、交易时间、成交价格、成交数量、买卖方向等。这些信息可以帮助你追踪每一笔成交的情况,分析市场的买卖力量和交易行为。
通过对期货逐笔成交明细的分析,交易者和投资者可以获取以下方面的信息:
首先,了解市场的成交情况。通过查看成交价格和成交数量,可以判断市场的价格走势和交易活跃度。
其次,分析市场的买卖力量。通过统计买入和卖出的数量和比例,可以了解市场的多空双方力量对比,判断市场的走势和趋势。
再次,研究交易者的行为和策略。通过分析成交记录,可以了解交易者的买卖行为和策略,发现一些潜在的交易机会。
最后,优化交易策略和风险管理。通过对期货逐笔成交明细的研究,可以发现一些常见的交易错误和风险因素,从而改进自己的交易策略和风险管理能力。
混合型\股票型基金有什么办法可以实时查看涨跌走势? 和指数型基金一样。
优质回答下文我主要是以股票代码举例,换成基金代码也是可以的,实时关注!
Ref===>tushare
系统:Ubuntu 15.04 Python:2.7 环境包:Anaconda,仅供娱乐.
最近在学习Python语言,刚好也想学学炒股,因此学习了一些基础知识后,打算做一些股票相关的demo练手,第一个要解决的问题当然是数据采集。
翻遍了网络,看了一些朋友的代码片段,知道了向API请求数据的格式大概是这样的:;type=last其中的akdaily表示日k线,sh601989则是股票代码,向端口发出请求后会返回股票的所有历史数据。因为不会以关键词高亮的模式写代码,请自带IDE观看,原代码如下:
const.py
# -*- coding: utf-8 -*-
"""
功能:
放置常量,列表
Created on Thu Jul 23 09:17:27 2015
@author: jet
"""
DAY_PRICE_COLS = ['date', 'open', 'high', 'close', 'low', 'volume',
'chg', '%chg', 'ma5', 'ma10', 'ma20',
'vma5', 'vma10', 'vma20', 'turnover']
DAY_PRICE_URL = '%sapi.finance.%s/%s/code=%s&type=last'
INDEX_KEY = ['SH', 'SZ', 'HS300', 'SZ50', 'GEB', 'SMEB']
INDEX_LIST = {'SH': 'sh000001', 'SZ': 'sz399001', 'HS300': 'sz399300',
'SZ50': 'sh000016', 'GEB': 'sz399006', 'SMEB': 'sz399005'}
INDEX_DAY_PRICE_COLS= ['date', 'open', 'high', 'close', 'low', 'volume',
'chg', '%chg', 'ma5', 'ma10', 'ma20',
'vma5', 'vma10', 'vma20']
K_TYPE_KEY = ['D', 'W', 'M']
K_TYPE_MIN_KEY = ['5', '15', '30', '60']
K_TYPE = {'D': 'akdaily', 'W': 'akweekly', 'M': 'akmonthly'}
MIN_PRICE_URL = '%sapi.finance.%s/akminscode=%s&type=%s'
PAGE_TYPE = {'http': ';, 'ftp': ';}
PAGE_DOMAIN = {'sina': 'sina.com.cn', 'ifeng': 'ifeng.com'}
URL_ERROR_MSG = '获取失败,请检查网络状态,或者API端口URL已经不匹配!'
get_hist_data.py
# -*- coding: utf-8 -*-
"""
Created on Thu Jul 23 09:15:40 2015
@author: jet
"""
import const as ct
import pandas as pd
import json
from urllib2 import urlopen,Request
def get_hist_data(code = None, start = None, end = None, ktype = 'D'):
"""
功能:
获取个股历史交易数据
--------
输入:
--------
code:string
股票代码 比如:601989
start:string
开始日期 格式:YYYY-MM-DD 为空时取到API所提供的最早日期数据
end:string
结束日期 格式:YYYY-MM-DD 为空时取到最近一个交易日数据
ktype:string(default=D, 函数内部自动统一为大写)
数据类型 D=日K线,W=周K线,M=月K线,5=5分钟,15=15分钟
30=30分钟,60=60分钟
输出:
--------
DataFrame
date 日期
open 开盘价
high 最高价
close 收盘价
low 最低价
chg 涨跌额
p_chg 涨跌幅
ma5 5日均价
ma10 10日均价
ma20 20日均价
vma5 5日均量
vma10 10日均量
vma20 20日均量
turnover换手率(指数无此项)
"""
code = code_to_APIcode(code.upper())
ktype = ktype.upper()
url = ''
url = get_url(ktype, code)
print(url)
js = json.loads(ping_API(url))
cols = []
if len(js['record'][0]) == 14:
cols = ct.INDEX_DAY_PRICE_COLS
else:
cols = ct.DAY_PRICE_COLS
df = pd.DataFrame(js['record'], columns=cols)
if ktype in ct.K_TYPE_KEY:
df = df.applymap(lambda x:x.replace(u',', u''))
for col in cols[1:]:
df[col]=df[col].astype(float)
if start is not None:
df = df [df.date >= start]
if end is not None:
df = df[df.date <= end]
df = df.set_index('date')
return df
def code_to_APIcode(code):
"""
功能:
验证输入的股票代码是否正确,若正确则返回API对应使用的股票代码
"""
print(code)
if code in ct.INDEX_KEY:
return ct.INDEX_LIST[code]
else:
if len(code) != 6:
raise IOError('code input error!')
else:
return 'sh%s'%code if code[:1] in ['5', '6'] else 'sz%s'%code
def get_url(ktype, code):
"""
功能:
验证输入的K线类型是否正确,若正确则返回url
"""
if ktype in ct.K_TYPE_KEY:
url = ct.DAY_PRICE_URL % (ct.PAGE_TYPE['http'], ct.PAGE_DOMAIN['ifeng'],
ct.K_TYPE[ktype], code)
return url
elif ktype in ct.K_TYPE_MIN_KEY:
url = ct.MIN_PRICE_URL % (ct.PAGE_TYPE['http'], ct.PAGE_DOMAIN['ifeng'],
code, ktype)
return url
else:
raise IOError('ktype input error!')
def ping_API(url):
"""
功能:
向API发送数据请求,若链接正常返回数据
"""
text = ''
try:
req = Request(url)
text = urlopen(req,timeout=10).read()
if len(text) < 15:
raise IOError('no data!')
except Exception as e:
print(e)
else:
return text
#测试入口
print(get_hist_data('601989','2015-07-11','2015-07-22'))
怎么用python计算股票
优质回答作为一个python新手,在学习中遇到很多问题,要善于运用各种方法。今天,在学习中,碰到了如何通过收盘价计算股票的涨跌幅。
第一种:
读取数据并建立函数:
import numpy as np
import matplotlib.pyplot as plt
from scipy.interpolate import spline
from pylab import *
import pandas as pd
from pandas import Series
a=pd.read_csv('d:///1.csv',sep=',')#文件位置
t=a['close']
def f(t):
s=[]
for i in range(1,len(t)):
if i==1:
continue
else:
s.append((t[i]-t[i-1])/t[i]*100)
print s
plot(s)
plt.show()
f(t)
第二种:
利用pandas里面的方法:
import pandas as pd
a=pd.read_csv('d:///1.csv')
rets = a['close'].pct_change() * 100
print rets
第三种:
close=a['close']
rets=close/close.shift(1)-1
print rets
总结:python是一种非常好的编程语言,一般而言,我们可以运用构建相关函数来实现自己的思想,但是,众所周知,python中里面的有很多科学计算包,里面有很多方法可以快速解决计算的需要,如上面提到的pandas中的pct_change()。因此在平时的使用中应当学会寻找更好的方法,提高运算。
有A股的分时交易数据API接口吗?
优质回答获取的方法主要用到了两个python第三方模块,一个jquote_api,用这个api来获取全市场的A股代码和一些简单的数据,另外一个是easyquotation,这个api负责获取实时的行情数据。具体的操作需要用到的源码如下分析:
1、通过jquote_api拿到A股全市场的代码;
2、通过easyquotation获取一揽子股票的实时行情;
3、需要注意的是查询股票数据接口是一次性推送过来的,必须要遍历去提取你要的股票代码的数据
想要成长,必定会经过生活的残酷洗礼,我们能做的只是杯打倒后重新站起来前进。上面关于python获取股票实时数据的信息了解不少了,帮企客希望你有所收获。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。


