python双均线预测能力检验3

简介: python双均线预测能力检验3
# -*- coding: utf-8 -*-
"""
Created on Wed Jun  7 10:22:18 2017
@author: yunjinqi 
E-mail:yunjinqi@qq.com 
Differentiate yourself in the world from anyone else.
"""
import pandas as pd  
import numpy as np  
import datetime  
import time  
import math
import matplotlib.pyplot as plt
import random
#获取数据  
df=pd.read_csv('C:/Users/HXWD/Desktop/rb000.csv',encoding='gbk')  
df.head()
df.columns=['date','open','high','low','close','volume','amt']  
df.head()  
###########################原始数据
i=5
j=20
df['ma5']=df['close'].rolling(i).mean()    
df['ma20']=df['close'].rolling(j).mean()    
df.ix[df['ma5']>df['ma20'],'cross']=1    
df.ix[df['ma5']<=df['ma20'],'cross']=-1    
#df[['close','ma5','ma20']][-200:].plot()    
df['ret']=(df['close']-df['close'].shift(1))/df['close'].shift(1)
df['profit']=df['ret']*df['cross']    
#df['profit'].plot()    
#target=df['profit'].sum()    
target=df['profit'].dropna()
plt.hist(target,bins=100)
######怀特真实检验,自举法
#从里面抽出来ll个数据作为一组,计算平均收益,抽取5000组进行计算
target=df['profit'].dropna()
ll=len(target)
ss=target.mean()
target.sum()
new_target=target-ll*[ss]
new_target=pd.Series(list(new_target))
all_target=[]
j=0
while j<5000:
    all_value=[]
    i=0
    while i<len(new_target):
        value=new_target[random.randint(0,len(new_target)-1)]
        #print(value)
        all_value.append(value)
        i=i+1
    all_value=pd.Series(all_value)
    all_target.append(all_value.sum())
    j=j+1
    print(j)
plt.hist(all_target)
jianyan_profit=df['profit'].sum()
jianyan_profit

20170608105156265.png

jianyan_profit
Out[91]: 4.864976648275746

#基于随机的收益与策略的收益差距非常大,我们有理由相信,策略是具有预测能力的。

目录
相关文章
|
1月前
|
数据可视化 数据处理 Python
如何使用Python实现一个基于均线的交易策略
【10月更文挑战第9天】本文介绍了如何使用Python实现一个基于均线的交易策略。主要步骤包括导入所需库(如`pandas`、`numpy`和`matplotlib`),加载股票或期货的历史数据,计算均线和其他指标,实现交易策略逻辑,以及可视化交易结果。示例代码展示了如何根据均线交叉点进行开仓、止损和止盈操作,并提供了注意事项,如数据来源、交易成本和风险管理。
70 7
|
8天前
|
BI Python
SciPy 教程 之 Scipy 显著性检验 8
本教程介绍SciPy中显著性检验的应用,包括如何利用scipy.stats模块进行显著性检验,以判断样本与总体假设间的差异是否显著。通过示例代码展示了如何使用describe()函数获取数组的统计描述信息,如观测次数、最小最大值、均值、方差等。
18 1
|
9天前
|
Python
SciPy 教程 之 Scipy 显著性检验 7
SciPy 教程之 Scipy 显著性检验第7部分,介绍显著性检验的基本概念及其在 SciPy 中的应用。显著性检验用于评估样本数据与假设之间的差异是否由随机因素引起。SciPy 的 `scipy.stats` 模块提供了执行显著性检验的功能,包括 KS 检验等方法,用于检测数据是否符合特定分布。示例代码展示了如何使用 KS 检验验证一组数据是否符合正态分布。
14 2
|
11天前
|
Python
SciPy 教程 之 Scipy 显著性检验 3
本教程介绍Scipy显著性检验,包括其基本概念、原理及应用。显著性检验用于判断样本与总体假设间的差异是否显著,是统计学中的重要工具。Scipy通过`scipy.stats`模块提供了相关功能,支持双边检验等方法。
20 1
|
11天前
|
Python
SciPy 教程 之 Scipy 显著性检验 1
本教程介绍Scipy显著性检验,包括统计假设、零假设和备择假设等概念,以及如何使用scipy.stats模块进行显著性检验,以判断样本与总体假设间是否存在显著差异。
19 0
|
3月前
|
自然语言处理 算法 数据挖掘
基于python豆瓣电影评论的情感分析和聚类分析,聚类分析有手肘法进行检验,情感分析用snownlp
本文介绍了一个基于Python的情感分析和聚类分析项目,使用snownlp库对豆瓣电影评论进行情感分析,并采用手肘法辅助K-means算法进行聚类分析,以探索评论中的不同主题和情感集群。
基于python豆瓣电影评论的情感分析和聚类分析,聚类分析有手肘法进行检验,情感分析用snownlp
|
3月前
|
数据挖掘 Python
【Python数据分析】假设检验的基本思想、原理和步骤
文章详细介绍了假设检验的基本思想、原理、可能犯的错误类型、基本步骤以及在不同总体情况下的检验方法,阐述了如何在Python中应用假设检验,并通过P值来判断假设的可靠性。
56 1
|
3月前
|
算法 数据可视化 搜索推荐
基于python的k-means聚类分析算法,对文本、数据等进行聚类,有轮廓系数和手肘法检验
本文详细介绍了基于Python实现的k-means聚类分析算法,包括数据准备、预处理、标准化、聚类数目确定、聚类分析、降维可视化以及结果输出的完整流程,并应用该算法对文本数据进行聚类分析,展示了轮廓系数法和手肘法检验确定最佳聚类数目的方法。
103 0
|
4月前
|
算法 大数据 数据处理
震撼!Python堆与优先队列的神奇力量,让你的数据处理能力瞬间爆表!
【7月更文挑战第9天】Python的heapq模块实现了堆数据结构,用于高效地插入、删除和查找最大/最小元素。在Top K元素查找中,堆能快速找到大数据集的前k个最大值。同样,堆作为优先队列,按优先级而非入队顺序处理任务,如任务调度,展示其在复杂问题解决中的效率。掌握这些工具,能显著提升数据处理和编程效率。
47 3
|
4月前
|
网络协议 开发者 Python
颠覆传统!Python Socket编程新思维,基础与进阶并重,打造卓越网络能力!
【7月更文挑战第25天】在数字时代,网络通信至关重要,Python的Socket编程简化了这一复杂领域,使初学者也能轻松上手。通过Python的`socket`模块,我们能快速搭建服务器与客户端,实现数据交换。示例代码展示了如何创建、绑定及监听Socket,以及收发消息。掌握基础后,可利用asyncio库探索异步编程,提升通信效率,处理多连接。Python的Socket编程,结合传统与现代技术,助力开发者在网络通信领域取得非凡成就。
73 0
下一篇
无影云桌面