量化应用技巧
Scipy在量化交易中主要用于统计分析、假设检验和数值优化。常用的包括正态分布检验、 相关性分析、以及策略参数优化等。curve_fit可用于拟合价格模式,optimize模块可用于最优组合计算。
Python量化编程速查
| 函数 | 说明 | 示例 |
|---|---|---|
norm.pdf() |
正态分布概率密度 | norm.pdf(x, mu, sigma) |
norm.cdf() |
正态分布累积分布 | norm.cdf(x, mu, sigma) |
norm.ppf() |
正态分布分位数 | norm.ppf(0.95, mu, sigma) |
skew() |
偏度计算 | skew(data) |
kurtosis() |
峰度计算 | kurtosis(data) |
pearsonr() |
Pearson相关系数 | pearsonr(x, y) |
spearmanr() |
Spearman相关系数 | spearmanr(x, y) |
| 函数 | 说明 | 示例 |
|---|---|---|
ttest_1samp() |
单样本t检验 | ttest_1samp(data, 0) |
ttest_ind() |
双样本t检验 | ttest_ind(a, b) |
f_oneway() |
方差分析ANOVA | f_oneway(*groups) |
levene() |
方差齐性检验 | levene(a, b) |
ks_2samp() |
Kolmogorov-Smirnov检验 | ks_2samp(a, b) |
anderson() |
Anderson-Darling检验 | anderson(data) |
| 函数 | 说明 | 示例 |
|---|---|---|
minimize() |
通用最小化 | minimize(func, x0) |
minimize_scalar() |
标量最小化 | minimize_scalar(func) |
fmin() |
无约束最小化 | fmin(func, x0) |
curve_fit() |
曲线拟合 | curve_fit(func, xdata, ydata) |
linprog() |
线性规划 | linprog(c, A_ub, b_ub) |
root() |
求根 | root(func, x0) |
| 函数 | 说明 | 示例 |
|---|---|---|
interp1d() |
一维插值 | interp1d(x, y, kind='linear') |
interp2d() |
二维插值 | interp2d(x, y, z) |
UnivariateSpline() |
样条插值 | UnivariateSpline(x, y) |
griddata() |
网格数据插值 | griddata(points, values, xi) |
| 函数 | 说明 | 示例 |
|---|---|---|
find_peaks() |
寻找峰值 | find_peaks(data) |
convolve() |
卷积 | convolve(a, b) |
correlate() |
相关 | correlate(a, b) |
savgol_filter() |
Savitzky-Golay滤波 | savgol_filter(data, window, polyorder) |
butter() |
Butterworth滤波器 | butter(N, Wn) |
Scipy在量化交易中主要用于统计分析、假设检验和数值优化。常用的包括正态分布检验、 相关性分析、以及策略参数优化等。curve_fit可用于拟合价格模式,optimize模块可用于最优组合计算。