如何提取股票软件中的实时数据

2024-05-16

1. 如何提取股票软件中的实时数据

盘后数据下载!选择即时数据。不过有些软件只提供分钟数据,而不提供分时数据

如何提取股票软件中的实时数据

2. 如何编程从免费股票软件中提取实时数据?

自己写程序的话,一种方法是从已提供的信息源,例如webservice获取数据。还有种办法就是去连接提供即时信息的网页硬解析。

代码举例如下:

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/akmin?scode=%s&type=%s' 
PAGE_TYPE = {'http': 'http://', 'ftp': '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'))

3. 怎么通过编程从炒股软件获取行情数据,我想通过编程来分析数据

要用到 api

http://www.congci.com/item/347

怎么通过编程从炒股软件获取行情数据,我想通过编程来分析数据

4. 如何用(易语言)编程,设计一个控制,别的软件的,程序。 主要是获取股票,价格变动。

先找一个实时更新股票的权威网站然后找到网站股票的列表之后获取该网页的源代码 在程序里分析.输出数据 具体的懒得写 只给出思路

5. 股票软件编程问题

这个嘛,的确有些异想天开,但只要你努力,编个软件是做的到的。

第一步,您可以尝试在一些免费软件上写指标,很多软件都提供公式编辑功能,这些公式编辑器就是一种简化的计算机语言,如果您对股市的想法不复杂,使用别人的软件做平台,自己加些东西,可能是上手最快的办法。

如果您期望获得的是独立完整的产品,就需要找数据源了。如果您计算机水平足够高,任何一款免费软件的数据都能够导出来。如果您做不到这一点,可以找个免费的数据接口。这些数据接口在许多软件论坛上有提供,至于怎样使用这些接口,您需要找接口的提供者咨询。免费数据接口是网上的一些编程高手提供的,有些收费,有些免费。即使收费,费用也不高。

找到数据后,就可以写自己的软件了。通过各软件商的摸索,股票软件几乎唯一的选择是C语言。早前人们尝试过几乎所有当前流行的计算机语言写股票软件,但目前大品牌的正版付费软件几乎都是C语言写的,其他语言在处理数据流上效率太低,以至于不能商品化。

当您的软件已经可以向市场推广时,就需要购买正式的数据源了。来自交易所的数据有两个版本:Level-1和Level-2,Level-1每年约80万,Level-2是买不到的,后者属于特许经营,您需要是注册资本1000万以上的公司,通过向交易所特别申请才能获得。运营Level-2数据的投资额大约是3000万/年,包括研发、市场和数据传输平台。

如果您的软件创新度有限,您的商业机会不多。如果您有自己的创造,那您就有机会了。在这个市场上,获得每年3000万的营业额不困难。

如果您试图获得每年上亿的营业额并在创业板上市,您需要找到不低于4000万的风险投资,并且组建一个不小于150人的团队。

祝您成功吧,有志者事竟成。

股票软件编程问题

6. 股票软件编程中,某一日的开盘5分中的(v 或C)怎样用公式表示

你是用的什么编程软件?通达信还是?
通达信的话要看你在哪一个周围上看,跨周期的话需要加入周期引用。

7. 如何学习编写一个股票交易软件的交易程序?

建议先学基础的C语言及汇编基础开始,可以先看下别的交易程序,再自己练习。

如何学习编写一个股票交易软件的交易程序?

8. 关于股票操作程序化的问题 我想在通达信交易软件内自己编程选股 从初学者学起(是电脑编程方面的)

编程不难,难的是能设计出稳定盈利的程序。先学习通达信里的编程吧,很简单的。我也是非计算机专业的,在大三时花了半学期就摸透了。你如果认真学习,一周内就能掌握了。没有什么技术含量。股票软件程序化交易不太现实,目前好像没有券商不支持。期货程序化交易一般是用文华财经。
从学会到精通一个月左右。编程不难,难在编出稳定盈利的程序。
先看一下里面的函数,都有介绍的。网上有很多教程。很好编的,没有C语言那么复杂。
有问题可以继续追问
最新文章
热门文章
推荐阅读