
量化分析
文章平均质量分 70
以Backtrader为量化框架,Tushare为数据支持,python为编程语言,来完成量化分析。
Coding的叶子
AI大模型、三维感知算法、计算机视觉算法、量化算法等长期研究与分享。
展开
-
【量化投资】离散傅里叶变换求数组周期
离散傅里叶变换在量化投资中的应用,形象理解傅里叶变换,含python代码。本节将介绍如何通过傅里叶变换求解一组数据当中可能存在的周期性,后续将应用本节的结果实际在量化程序中进行应用。本文计算方法不一定正确,欢迎大家多多指正,并在评论区进行交流。1 离散傅里叶变换 离散傅里叶变换的公式如下: 其中N为原始数据的长度,f(n)为原始数据,即随时间变化的序列。F(u)为傅里叶变换结果,可以看到F(u+1)和F(u)的每个...原创 2022-06-22 08:00:00 · 5438 阅读 · 0 评论 -
量化分析小函数——上穿函数
上穿函数用于判断上穿信号的有无。输入为两条信号,obj和ref,两者数据类型为python列表。主要判断obj是否上穿ref。上穿函数用于判断上穿信号的有无。输入为两条信号,obj和ref,两者数据类型为python列表。主要判断obj是否上穿ref。上穿函数用于判断上穿信号的有无。输入为两条信号,obj和ref,两者数据类型为python列表。主要判断obj是否上穿ref。穿函数用于判断上穿信号的有无。输入为两条信号,obj和ref,两者数据类型为python列表。主要判断obj是否上穿ref。...原创 2021-12-06 22:01:09 · 6281 阅读 · 0 评论 -
蒙特卡洛量化分析方法
蒙特卡洛方法主要思想:对于一个随机系统,输出随输入变化是随机的,那么通过重复采样的方法可以得到输出的具体分布,进而再对输出分布形式进行分析。大数定律:当在试验不变的条件下,重复试验多次,随机事件的频率近似于它的概率。将上述思想用于量化分析:(1)假设股票收盘价符合正态分布。(2)根据历史数据计算正态分布均值和方差。(3)假设历史数据的均值和方差来在预测周期内近似不变,确定正态分布参数。(4)假设预测周期为N,那么每运行一次正态分布函数会得到一组数据,这些数据是随机的。(5)将第(原创 2021-08-27 21:55:34 · 8417 阅读 · 0 评论 -
python模拟生成股票K线历史数据
量化分析通常需要大量历史数据,在回测时需要用到真实的历史数据。但在编写程序的过程中,可以自动生成一些模拟数据,用于程序调试。当程序调试好之后,再切换回真实的数据。代码如下:# -*- coding: utf-8 -*-"""Created on Sat Aug 21 17:43:09 2021@author: Administrator"""import numpy as npimport pandas as pdimport matplotlib.pyplot ...原创 2021-08-21 19:52:48 · 4136 阅读 · 0 评论 -
python dataframe详细使用方法
dataframe为pandas中的数据格式,通常用来存储时间序列数据,比如K线数据,这在量化分析时通常用到。1、创建dataframeimport pandas as pddf0 = pd.DataFrame([[1,2,3,4],[5,6,7,8]], columns=['a', 'b', 'c', 'd'])2、读取csv文件为dataframe格式df0 = pd.read_csv(data_path)3、获取column列栏目名称,行索引名,全部数值df0.colu原创 2021-08-21 17:42:17 · 17807 阅读 · 0 评论 -
Tushare判断指定日期股票是否ST
tushare中没有在指定日期条件下判断股票是否是st,只有直接通过stock_basic获取当前的状态是否是st。但是我们在做量化策略回测时,选股通常要过滤当时股票是否处于st状态。下面将定义一个函数实现指定日期股票是否ST,借助Tushare的股票更名函数来实现。具体代码如下:#stock_code = 'xxxxxx.SH'#target_date = '20200830'#若为ST,返回True;否则返回Falsedef is_st(stock_code, target_date原创 2021-07-17 22:04:10 · 3794 阅读 · 0 评论 -
Talib技术因子详解(十)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-14 21:28:44 · 4543 阅读 · 1 评论 -
Talib技术因子详解(九)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-14 21:05:21 · 3607 阅读 · 1 评论 -
Talib技术因子详解(八)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-14 20:41:48 · 4359 阅读 · 0 评论 -
Talib技术因子详解(七)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-13 23:25:31 · 4418 阅读 · 0 评论 -
Talib技术因子详解(六)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-13 21:55:52 · 4110 阅读 · 2 评论 -
Talib技术因子详解(五)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-13 21:29:49 · 8478 阅读 · 1 评论 -
Talib技术因子详解(四)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)26、MACD 异同移动平均线,调用方式如下:macd, macdsignal, macdhist = talib.MACD(close, fastperiod, slowperiod, signalperiod)当MACD升穿Signal Line,入市讯息;当MACD跌穿Signal Line,出市讯息。当MACD上升时,股票价原创 2021-07-11 22:20:21 · 6233 阅读 · 1 评论 -
Talib技术因子详解(三)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)17、SAR 阶段中点价格SAR指标又叫抛物线指标或停损转向操作点指标,调用方式如下:其他代码:Talib技术因子详解(一)...原创 2021-07-11 19:31:47 · 5910 阅读 · 1 评论 -
Talib技术因子详解(二)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码请参考:Talib技术因子详解(一)11、SAR 阶段中点价格SAR指标又叫抛物线指标或停损转向操作点指标,调用方式如下:output = talib.SAR(high, low)(1)当股票股价从SAR曲线下方开始向上突破SAR曲线时,为买入信号,预示着股价一轮上升行情可能展开,投资者应迅速及时地买进股票。(2)当股票股价向上突破SAR曲线后继续向上运动而SAR原创 2021-07-10 20:51:11 · 3980 阅读 · 0 评论 -
Talib技术因子详解(一)
talib安装方式:pip install Ta-libTushare数据获取请参考:金融量化分析基础环境搭建数据获取代码import tushare as tsts.set_token('Tushare的token')pro = ts.pro_api()#使用tushare旧版接口获取数据def get_data(code, start, end): df = pro.daily(ts_code=code, start_date=start, end_date=end)原创 2021-07-10 00:14:18 · 15420 阅读 · 6 评论 -
指数历年各月涨幅分析-验证五穷六绝七翻身是否可信
指数通常反映了一个行业或者一类股票的行情数据。本文将对697支指数的历史各月涨幅进行分析,为量化投资作一个参考。从分析中,我们可以验证五穷六绝七翻身是否可信,并找出上涨概率最大的一些指数和月份。1、数据准备本文程序中用到两个数据:(1)index20210703.csv:存储了697支指数代码。(2)2010-2021全部指数K线数据:存储了697支指数的历史K线数据。指数历史数据获取方式在文末给出。2、获取某一指数指定时间段内的历史数据#获取某一指数指定时间段内的历史数据d原创 2021-07-05 21:39:15 · 2276 阅读 · 3 评论 -
指数历年涨幅分析
指数通常反映了一个行业或者一类股票的行情数据。本文将对697支指数的历史年涨幅进行分析,为量化投资作一个参考。1、数据准备本文程序中用到两个数据:(1)index20210703.csv:存储了697支指数代码。(2)2010-2021全部指数K线数据:存储了697支指数的历史K线数据。指数历史数据获取方式在文末给出。2、获取某一指数指定时间段内的历史数据#获取某一指数指定时间段内的历史数据def y_get_price(stockfile, start_date, end_原创 2021-07-04 14:14:36 · 2639 阅读 · 0 评论 -
趋势拟合策略量化分析
根据趋势拟合的量化分析方法,是对股票价格历史数据进行曲线拟合,从而预测出未来几天的股价。在本文所示的程序中,用fndays表示所用历史数据的天数,pndays表示预测未来的天数。例如我们可以用过去10天的价格预测未来3天的股票价格。1、数据准备本文程序中用到两个数据:(1)20200206.npy:存储了xxx支股票代码。(2)A股2010-2020K线数据:存储了xxx支股票的历史K线数据。股票历史数据获取方式在文末给出。2、曲线拟合曲线拟合是对历史数据拟合成一条曲线,实际效果原创 2021-07-02 23:25:53 · 4363 阅读 · 6 评论 -
策略1:价格动量
框架:Backtrader数据:Tushare来源:151个交易策略 《151 Trading Strategies》3.1 Strategy: Price-momentum关键参数(1) 收益率(2) T周期内累计收益(3) T周期内平均收益率(4) 风险调整收益(5) 收益波动方差...原创 2021-04-21 22:30:24 · 3776 阅读 · 0 评论 -
量化分析基本框架示例
量化分析基本框架示例框架:Backtrader数据:Tushare安装方式:金融量化分析基础环境搭建示例代码:import pandas as pd from datetime import datetimeimport backtrader as btimport tushare as ts import matplotlib.pyplot as pltts.set_token('Tushare账户token')#获取方式请参考安装方式链接pro = ts.pro_a原创 2021-04-07 17:38:16 · 3879 阅读 · 3 评论 -
金融量化分析基础环境搭建
金融量化分析基础环境搭建第一步:Python安装anaconda官网下载下载地址https://www.anaconda.com/distribution/注意选用该电脑相应的系统和64/32位。已安装Python使用环境的请跳过此步骤。第二步:Backtrader安装Backtrader功能十分完善,有完整的使用文档,安装相对简单(直接pip安装即可)。优点是运行速度快,内置了talib股票分析技术指标库;支持多品种、多策略、多周期的回测和交易;扩展灵活,可以集成TensorFlow原创 2021-04-05 12:30:15 · 4859 阅读 · 1 评论