当前位置: 首页 > wzjs >正文

西安网站维保公司网络营销方案有哪些

西安网站维保公司,网络营销方案有哪些,全网推广平台有哪些,用新域名做网站排名快吗01_经典策略复盘 在某款股票软件手机版App上,有一项“复盘”的功能,这个功能很强大,它能把这支股票近1年的走势,用设置好的六个策略去回测,得到每个策略的近一年的收益率,并做了从最好到最差的排序。这就能…

01_经典策略复盘

在某款股票软件手机版App上,有一项“复盘”的功能,这个功能很强大,它能把这支股票近1年的走势,用设置好的六个策略去回测,得到每个策略的近一年的收益率,并做了从最好到最差的排序。这就能给使用者一个参考,当前这支股票近期采用哪一个经典策略是最好的。

(注意,个股期间股价不属于六大经典策略。)

然而,这个复盘只能用于股票,对于基金(ETF等)无法使用,其实相同的在ETF上的回测逻辑和步骤都是一样的,也不知道为什么好多年了却一直没有做进去。

所以这一章,我们就把类似复盘的功能在backtrader的程序中去实现,让它也能应用于ETF。

02_利用评价查看

其实在前面的文章中,我们已经做了一部分相关的内容,比如多支股票 X 多个策略的回测,在这里我们是可以勾选几支股票以及勾选上经典策略,然后进行回测统计比较,最后把评价记录文件.csv打开来,手动进行排序就可以了。

有统计数据,对这些数据进行分析就可以发现很多的问题点和思考点,比如经典布林策略从胜率上看一般都比较高但是从总盈利上看却往往是最低的,这个在之间的文章中已经讨论过,经典布林带适合于振荡行情,单边向上或单边向下都不适应,并且布林带是没有止损的,它不是一个完整的闭环策略。

但是现在我们不是讨论这个的时候,当前的主要任务是把这些需要进行手工后处理的东西,在我们的程序上稍微变换一下,以文章上面某股票手机端App的类似形式直接显示出来。

03_复盘功能的实现

A_界面UI

于是我们先简单构思了一下,打算通过ComboBox来选择股票/ETF,然后先测试点击按钮让我们需要的数据显示出来,见下图红框。

B_代码复用

既然之前已经有了多个股票X多个策略回测评价的函数,这里的复盘功能反而更简单一些,只有多个策略的循环,股票是需要选择一个就可以了。

回顾一下之前的评价的函数,首先我们需要在run_main_analyser的函数中添加评价,而在进行回测后result = cerebro.run() ,还需要对评价进行处理 df_analyzer = analyzer_output(strat)

def run_main_analyser (df_list,run_strategy,i, sdate1,sdate2,list_analyzer): #......cerebro = bt.Cerebro()#......add_analyzer_all(cerebro)    # 加入analyzer#......result = cerebro.run() strat = result[0]df_analyzer = analyzer_output(strat)#......

于是,add_analyzer_all的函数以及analyzer_output的函数就不需要改动,包括run_main_analyzer的函数也不需要改动,我们只需要在“经典策略收益”的按钮响应上做一个strategy的循环就可以了。

C_经典策略复盘

设置好需要用到的策略名,循环回测。

sel2 = ('基准','经典_MACD', '经典_KDJ', '经典_双均线', '短均线策略', 'EXPMA9单线', '经典布林线策略') 
straList = [myStrategys[x] for x in sel2]# ......
list_analyzer2 = []for stra1 in straList:stra2 = eval(stra1)run_main_analyser(df_list,stra2,sel21,s2,ss1,list_analyzer2)df_analyzer2 = pd.DataFrame(list_analyzer2)

最后,得到的DataFrame进行数据处理,再通过wxPython的ListCtrl控件显示在窗口中就完成了。

    df_sorted = df_analyzer2.sort_values(by='近1年', ascending=False)# .......i = 1for index,row in df_sorted.iterrows():idx = self.m_listCtrl1.InsertStringItem(1024,"NA") # 非得插入一个Item不可data_strategy = row['策略']data_halfyear = round(row['近6月'],2)data_year = round(row['近1年'],2)data_sharp = round(row['qs夏普率'],2)drank = str(i)self.m_listCtrl1.SetItem(idx,0,data_strategy)self.m_listCtrl1.SetItem(idx,1,str(data_halfyear))self.m_listCtrl1.SetItem(idx,2,str(data_year))self.m_listCtrl1.SetItem(idx,3,str(data_sharp))self.m_listCtrl1.SetItem(idx,4,drank)i +=1 

完成后在界面中选择几支股票和ETF进行了简单的测试,由于先进行了近1年的收益率的排序,所以会以排名从第1名到第7名进行显示,从这里的四个例子看到,往往MACD经典策略总是会排在比较靠前的名次上,并且前面也讨论过MACD是双金叉系列自带止损,是最经典和实用的策略之一。

至此,一个半吊子的简单的经典策略复盘的功能算是初步完成了。

04_小结

这一节的内容比较少,换了新工作单位后暂时没有什么时间继续深入的进行个人研究,也几乎没有进步的东西。但经典策略复盘这个功能的实现,一直是我的执念,并且在我开始学习量化回测backtrader之前就有的执念,虽然通过一段时间对backtrader的学习,现在实现起来并没有太大的困难,但的确是完成了心中的一个担子,要不然就一直卡在我的进程中,不完成就一直不能走下去。念头通达,开心~

http://www.dtcms.com/wzjs/513822.html

相关文章:

  • 简述网站一般建设的流程可以做产品推广的软件有哪些
  • 用wordpress建立电商网站seo搜索优化公司报价
  • 网站开发选择什么软件沪指重上3000点
  • 中高端网站设计排名网站排名seo软件
  • 大丰网站建设价格促销方法100种
  • 衡水做网站的头条搜索是百度引擎吗
  • 网站模块插件是怎么做的百度点击工具
  • 怎么做网站源代码百度关键词排名查询工具
  • 欢迎访问建设银行网站公司网站制作需要多少钱
  • 东莞的网站建设公司哪家好在线seo优化工具
  • 长安手机网站建设app制作
  • 织梦cms网站公众号微博seo
  • 烟台建站价格百中搜优化
  • 茶叶怎么做网站销售推广平台的方法
  • 网站开发文档需求撰写word西安市网站
  • c 网站开发 视频教程运营推广渠道有哪些
  • 拼多多网页设计尺寸长春网站建设方案优化
  • 千页网素材官网入口dz论坛如何seo
  • 2015做导航网站怎么样进行网络推广
  • 网站建设教程纯正苏州久远网络浏览器打开是2345网址导航
  • 江门网站建设公司新冠病毒最新消息
  • 如何做网站怎么赚钱吗填写电话的广告
  • 好大夫在线个人网站王建设百度搜索如何去广告
  • 江苏专业做网站的公司网络优化行业的发展前景
  • 外网平面设计网站广州做seo的公司
  • 做网站需要学数据库吗国内疫情最新消息
  • 遵义城乡住房建设厅网站武汉网站seo推广
  • 做网站工资高么网络营销的概念和特点
  • 北京做网站的好公司樱桃磁力bt天堂
  • 做调查的有哪些网站推广app赚佣金平台有哪些