导航:首页 > 数据行情 > DeIPhi读取股票数据day

DeIPhi读取股票数据day

发布时间:2022-10-21 01:44:55

‘壹’ delphi如何读取服务器上的数据库文件

db是dbase
数据库文件
,直接用记事本就可以打开,打开后可以看见里面的内容,但排列不规律,你必须得知道读取数据的方法才可以正确读取,(比如第一个字段要读取多少个字节,或者第一个字段需要从哪个位置开始读),如果使用程序读取的话,直接使用文件名.db就可以了.
可以用DBASE数据库打开,也可以用DELPHI等第三方开发工具!

‘贰’ 请问高手们,在delphi语言里,如何读取数据库中每一行数据,比如字段名为useid,username,age,sex 补充如下

不能直接读一行,用ADOQuery.eof和ADOQuery.next循环每一条记录,在循环里读各个字段的值
ADOQuery.First;
while not ADOQuery.Eof do
begin
suseid := ADOQuery.FieldByName('useid').asstring;
susername := ADOQuery.FieldByName('username').asstring;
sage := ADOQuery.FieldByName('age').asstring;
ssex := ADOQuery.FieldByName('sex').asstring;
ADOQuery..Next;
end;

‘叁’ delphi怎样得到实时股票行情数据

实时股票行情数据,如果是商业性的需要服务费用,通常可以通过网络上各大股票网站站点来获取发布的行情数据,比如以下是从 sina 网的行情数据服务器上获取 沪市601006 的行情:


http://hq.sinajs.cn/list=sh601006

访问上面的url会返回一串文本,内容格式如:

varhq_str_sh600151="航天机电,11.020,10.980,10.950,
11.040,10.940,10.950,10.960,2634001,28909081.000,
9300,10.950,34300,10.940,55700,10.930,64000,10.920,
75900,10.910,22500,10.960,22192,10.970,20600,
10.980,50900,10.990,100300,11.000,2016-11-08,10:55:19,00";


然后对上面的数据进行文字解析就可以了。

‘肆’ 如何编程从免费股票软件中提取实时数据

自己写程序的话,一种方法是从已提供的信息源,例如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'))

‘伍’ 如何利用一些 finance 数据库 api 批量获取股票信息

1、通过API获取实时数据
请求地址
http://finance.yahoo.com/d/quotes.csv?s=<股票名称>&f=<数据列选项>
参数
s –表示股票名称,多个股票之间使用英文加号分隔,如”XOM+BBDb.TO+JNJ+MSFT”,罗列了四个公司的股票:XOM,BBDb.TO, JNJ, MSFT。
f – 表示返回数据列,如”snd1l1yr”。更详细的参见雅虎股票 API f参数对照表。
2、通过API获取历史数据
请求地址
http://ichart.yahoo.com/table.csv?s=<string>&a=<int>&b=<int>&c=<int>&d=<int>&e=<int>&f=<int>&g=d&ignore=.csv
参数
s – 股票名称
a – 起始时间,月
b – 起始时间,日
c – 起始时间,年
d – 结束时间,月
e – 结束时间,日
f – 结束时间,年
g – 时间周期。Example: g=w, 表示周期是’周’。d->’日’(day),w->’周’(week),m->’月’(mouth),v->’dividendsonly’
一定注意月份参数,其值比真实数据-1。如需要9月数据,则写为08。
3、通过API获取深沪股票数据
雅虎的API是国际性的,支持查询国内沪深股市的数据,但代码稍微变动一下,如浦发银行的代号是:600000.SS。规则是:上海市场末尾加.ss,深圳市场末尾加.sz。
最近股市甚火,受聘开发一股票网站,股票的数据从哪里来成了一个大问题,股票软件一般都是加密处理的,还有一些webservices也是要帐号 的,免费的方法只有一种了,抓别人网站的数据。好在经我研究,发现yahoo提供国内和国外股市每天的交易数据资料,这可谓一大幸事啊。
http://table.finance.yahoo.com/table.csv?s=ibm&d=6&e=22&f=2006&g=d&a=11&b=16&c=1991&ignore=.csv
上面的链接可以抓取IBM股票从1991年11月16日起到2006年6月22的数据。把ibm改成sohu,就可以抓到sohu的股票数据了。
http://table.finance.yahoo.com/table.csv?s=sohu&d=6&e=22&f=2008&g=d&a=11&b=16&c=2008&ignore=.csv
上面链接可以抓搜狐股票的数据。
那么中国股市的数据有没有呢?答案是肯定的,不过要按照下面的参数做些调整,下面提供全球证券交易所的资料。
上证股票是股票代码后面加上.ss,深证股票是股票代码后面加上.sz
例如:000001 = 000001.sz
深市数据链接:http://table.finance.yahoo.com/table.csv?s=000001.sz
上市数据链接:http://table.finance.yahoo.com/table.csv?s=600000.ss
上证综指代码:000001.ss,深证成指代码:399001.SZ,沪深300代码:000300.ss
下面就是世界股票交易所的网址和缩写,要查找哪个股票交易所的数据,就按照上面的格式以此类推。
上海交易所=cn.finance.yahoo.com,.SS,Chinese,sl1d1t1c1ohgv
深圳交易所=cn.finance.yahoo.com,.SZ,Chinese,sl1d1t1c1ohgv
美国交易所=finance.yahoo.com,,United States,sl1d1t1c1ohgv
加拿大=ca.finance.yahoo.com,.TO,Toronto,sl1d1t1c1ohgv
新西兰=au.finance.yahoo.com,.NZ,sl1d1t1c1ohgv
新加坡=sg.finance.yahoo.com,.SI,Singapore,sl1d1t1c1ohgv
香港=hk.finance.yahoo.com,.HK,Hong Kong,sl1d1t1c1ohgv
台湾=tw.finance.yahoo.com,.TW,Taiwan,sl1d1t1c1ohgv
印度=in.finance.yahoo.com,.BO,Bombay,sl1d1t1c1ohgv
伦敦=uk.finance.yahoo.com,.L,London,sl1d1t1c1ohgv
澳洲=au.finance.yahoo.com,.AX,Sydney,sl1d1t1c1ohgv
巴西=br.finance.yahoo.com,.SA,Sao Paulo,sl1d1t1c1ohgv
瑞典=se.finance.yahoo.com,.ST,Stockholm,sl1d1t1c1ohgv

‘陆’ delphi如何从数据库中读取数据啊。我刚学delphi

定义数组
var
arr: array of string;
遍历结果集
with DataMole2.ADODataSet1 do
begin
setlength(arr, recordcount);// 动态数组设定长度
first;
while not eof do
begin
arr[recno - 1] := FieldByName('Username').AsStringl; // 数组赋值
next;
end;
end;

‘柒’ 下载能一个通达信股票数读取的Delphi文本源代码,如何编译编软件请高手指点

光是这个文件可不够,还有其它文件吧。
如果文件齐了,里面应该包含一个.dpr文件(或者.groupproj,或者.bpg),你在Delphi里面打开它,然后在Delphi的菜单里面选择Build All。如果下载的文件们没问题的话,你就能得到想要的软件了。

‘捌’ 如何使用DELPHI编程从数据库中读取相关数据

1、放置ADOconnection控件;
2、放置ADOtable控件 或 查询控件;
3、放置 DataSource 控件;
4、放置 DBGrid 控件;
5、在ADOconnection控件中设置好连接串,选择数据表、打开数据表;
6、控件 2~4 分别指向前一个控件

阅读全文

与DeIPhi读取股票数据day相关的资料

热点内容
怎么分析股票的走势 浏览:139
金山表格股票数据链接 浏览:493
海南高铁股票有资金进入吗 浏览:17
朱雀企业优选股票型证券投资基金 浏览:29
股票重组涨停的 浏览:527
同花顺股票历史交易数据 浏览:236
股票软件中怎样显示跳空缺口 浏览:591
郑州银行回购股票 浏览:57
东方财富软件在哪看股票的年报 浏览:57
贵州银行股票解禁对股价的影响 浏览:106
怎么看一只股票是否估值偏低 浏览:239
当股票退市后股民手中的股票是什么概念 浏览:966
上柴股份股票最新价格 浏览:978
如何看待一只股票的估值大小 浏览:753
创业板st股票 浏览:105
绿色投资股票代码 浏览:831
全球最新股票排行榜2015 浏览:730
股票中如何看主力已出货 浏览:10
工大高新近一年股票走势 浏览:129
股票游资主力 浏览:543