stock-watch:实时全球股票市场K线数据获取工具

需积分: 15 0 下载量 154 浏览量 更新于2024-12-27 收藏 12KB ZIP 举报
资源摘要信息:"stock-watch是一个用于获取全球股票市场实时和历史k图表数据的工具,主要面向包括中国在内的全球股票市场。它是一个使用JavaScript编写的工具,可以通过npm进行安装,安装命令为npm install stock-watch。如果你需要在命令行中使用全局命令,可以在安装时加上-g选项。在命令行中使用时,可以通过输入sw和股票代码来获取数据,例如输入sw BABA可以获取阿里巴巴集团的股票数据。此外,stock-watch也可以作为节点模块进行使用,可以通过import Fetcher from 'stock-watch';引入,然后使用Fetcher.getRealtime和Fetcher.getHistorical等方法来获取实时数据和历史k图表数据。" 具体知识点如下: 1. stock-watch的定义和功能:stock-watch是一个JavaScript编写的工具,主要用于获取全球股票市场的实时和历史数据,包括但不限于中国市场。 2. 安装方法:stock-watch可以通过npm进行安装,安装命令为npm install stock-watch。如果需要在命令行中使用全局命令,可以在安装时加上-g选项。 3. 命令行使用:在命令行中,可以通过输入sw和股票代码来获取股票数据,例如输入sw BABA可以获取阿里巴巴集团的股票数据。 4. 作为节点模块的使用方法:stock-watch也可以作为节点模块进行使用,可以通过import Fetcher from 'stock-watch';引入,然后使用Fetcher.getRealtime和Fetcher.getHistorical等方法来获取实时数据和历史k图表数据。 5. JavaScript的应用:stock-watch是使用JavaScript编写的,这体现了JavaScript在开发各种工具和应用中的广泛使用。 6. 全球股票市场的数据获取:stock-watch的主要功能是获取全球股票市场的实时和历史数据,这对于投资者和分析师来说是一个非常有用的工具。 7. 对中国市场的支持:由于stock-watch能够获取包括中国在内的全球股票市场的数据,这对于关注中国市场的投资者和分析师尤为重要。 8. 实时数据和历史数据的获取:stock-watch不仅可以获取实时数据,也可以获取历史数据,这使得用户可以更全面地了解股票的运行情况。 以上就是对给定文件信息的详细解释,希望对你有所帮助。
2021-03-07 上传

import datetime today = datetime.date.today() ## 获取今天的日期 day1=datetime.date.today()-datetime.timedelta(300) ### 获取300天之前的日期 day2=datetime.datetime.strftime(today,"%Y-%m-%d" ) all_stock = get_all_securities(types=['stock'], date=day2) ### 获取所有股票代码 code=list(all_stock.index) ## 判断是否ST 并且删除st的股票代码 df_st=get_extras('is_st',code,start_date=day1,end_date=day2) for i in code: if any(df_st[i].values): code.remove(i) stock_list=[] for i in code: start_date=get_security_info(i).start_date days=(today-start_date).days if days>300: #### 选出上市满天300的股票 stock_list.append(i) data=dict() for i in stock_list: df=get_price(i,start_date=day1,end_date=day2,frequency='daily', fields=['open','close','high','low']) data[i]=df ### 将数据分成选股数据和回测数据。假设用中间的120根k线,后60根k线回测 code=[] n=45 ## n为回测k线的个数 s设为45 (可以随意调整) for i in stock_list: df=data[i] max_=max(df.high[-190:-n-1]) ### 选140=(190-45)根k线(可以随意调整) min_=min(df.low[-190:-n-1]) max_close=max(df.close[-190:-n-1]) ### 选出平台震荡期间振幅小于50%的,且,最后三天连涨,最后一天突破平台最大收盘价超过5%的所有股票 if all([max_/min_<1.5,df.close[-n-1]>df.close[-n-2]>df.close[-n-3],df.close[-n-1]/max_close>1.05]): code.append(i) ### 买入过程 ## 假设根据上面平台突破选出来的股票作为买入标的 ## 买入原则是 当天选出来的股票第二天以开盘价买入。且把选出来的每只股票以,同等资金额买入 capital=100000 ## 初始资金为 10万元 position=dict() ## 初始持仓手数为一个空字典 def handle(stock_list,capital,posttion,data,n): capital_=0 for i in code: capital_per=capital/len(code) position[i]=int(capital_per/(data[i].open[-n]*100)) capital_+=capital_per-position[i]*data[i].open[-n]*100 return ([position,capital_]) position_result=handle(get_code(),capital,position,data,n)修改上述代码,使能在jupyter里面运行

2023-06-06 上传