收益总结
2020年预期总收益率10%,实际整体收益率9.85%,稳健组合收益率2.8%,积极组合收益率17%
积极组合中基金收益率25%(年收益率=年持有收益/(当前总市值-年持有收益))
在投入成本/回报上,稳健/积极成本占比保持在1:1左右,基金成本占积极组合的50%左右,而在收益贡献上,稳健组合占总收益的15%,积极组合占总收益的85%,其中基金收益占总收益的74%
在大环境上,今年沪深300上涨27%,创业板上涨64%,黄金上涨13%,中证白酒上涨119%。。
在《深入理解Java虚拟机:JVM高级特性与最佳实践(第二版)》里这样介绍CMS回收器的工作过程:
CMS收集器是基于“标记—清除”算法实现的,它的运作过程相对于前面几种收集器来说更复杂一些,整个过程分为4个步骤,包括: •初始标记(CMS initial mark) •并发标记(CMS concurrent mark) •重新标记(CMS remark) •并发清除(CMS concurrent sweep)
很多人可能只看了这本书的介绍(实际这应该只是作者的概括),就认为CMS回收器就只有这4个阶段,看一下这里的gc log:
之前听说过一些通过python编写交易策略的量化交易平台,现在来了解一下交易平台的使用方式。这篇文章会演示怎么在交易平台上编写一个简单基金定投策略。
量化交易(Quantitative Trading)是指借助现代统计学和数学的方法,利用计算机技术来进行交易的证券投资方式。
量化交易的核心是数学模型,编程只是量化交易的实现方式。数学模型的评估方式是通过输入历史数据让我们“穿越”回之前的某一个时刻,然后按照模型进行交易,对比策略带来的收益(回测)。如果严格按照数据进行决策,量化交易可以克服人性的弱点,也可以克服认知偏差,另外在一个很大的资本市场,比如有成千上万只股票的时候,量化交易有更强的信息处理能力,能捕捉更多的投资机会。不过因为模型主要是根据历史数据来构建的,所以它吸收新的信息的能力比较迟钝。一旦发生某些重大事件(比如东哥事件~),有效性很可能就会受到影响。现在国内也有一些量化交易的主题基金,和其他主题的基金相比表现比较一般。
异步客户端使用java nio实现,和许多NIO的例子相同,启动一个线程执行select()操作,然后把获得的SocketChannel交给统一的handler处理。
异步客户端初始化并发起请求的调用栈如下:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22//初始化
HelloServiceClient.main()
= TAsyncClientManager.TAsyncClientManager()
= = TAsyncClientManager.SelectThread.run()
= = TAsyncClientManager.SelectThread.transitionMethods()
= = = TAsyncMethodCall.transition()
= = TAsyncClientManager.SelectThread.timeoutIdleMethods()
= = TAsyncClientManager.SelectThread.startPendingMethods()
= = = TAsyncMethodCall.start()
//发起调用
= HelloService.AsyncClient.helloVoid()
= = TAsyncClientManager.call()
= = = TAsyncMethodCall.prepareMethodCall()
= = = = HelloService.AsyncClient.helloVoid_call.write_args()
= = = TAsyncClientManager.SelectThread.getSelector().wakeup()
= = = TAsyncMethodCall.start()
= = = TAsyncMethodCall#registerForFirstWrite
= = = TAsyncMethodCall#doWritingRequestSize
= = = TAsyncMethodCall#doWritingRequestBody
= = = TAsyncMethodCall#doReadingResponseSize
= = = TAsyncMethodCall#doReadingResponseBody