跳至正文

现代C++教程 读书笔记

习题答案:https://github.com/changkun/modern-cpp-tutorial/tree/master/exercises

序言

本文传统C++ 是指C++ 98及之前的标准。

C++ 14/17是对C++ 11的重要补充和优化;而C++ 20则将这门语言领进了现代化的大门。

关于一些特性的初探:

  • auto关键字语义给操纵极为复杂的模板类型提供了底层支持;
  • lambda表达式基于C++匿名函数的闭包特性;
  • 右值引用的出现解决了C++长期被人诟病的临时对象效率问题;

第一章迈向现代C++[……]

继续阅读

传统制造业 vs 互联网行业

  • 观点

今天看到一个观点。

互联网行业核心是去中间化,提高沟通效率,将生产端和消费端直接打通,买车直接跟卖家谈,没有中间商赚差价。去中间化只是为了降成本,能够在中间减少中间商百分之几的利润,这是非常好的一点,但是这种做减法是有尽头的,永远不可能把成本减少到百分之百以下。去中间化只是提高中间的一段,如果能够提高人类30%的效率就不得了了。

但是做加法是没有尽头的,可以直接增加达到百分之一百,百分之五百。换句话来说人类文明是物质文明,不是信息文明,我们每一次工业革命都意味着物质的极大丰富,意味着成百上千倍效率的提升,而不是那3[……]

继续阅读

最好的告别:关于衰老与死亡,你必须知道的常识

评论

  • 作者认为的进步应该是指在经济发展的阶段里,老人拥有更多财富,从而拥有更多选择。

这实际上代表着一种极大的进步,老年人的选择显著增加。

  • 作者的逻辑思路好清晰啊,从老人提到岳母的母亲和祖父,然后提出两种老人的生活方式,进而提出老而独立生活是社会的进步,最后再问出独立生活中丧失独立能力怎么办。
  • 生存矩形化是指原本5岁小孩的人口应该多于年龄大的人,但如今50岁和5岁小孩人口相当,这样的人口结构会带来复杂的人口问题,是人类迄今为止没有遇见过的问题。
  • 年老以后能做的事情很有限,照顾另一半承载了一部分自我价值。
  • [……]

    继续阅读

TCP拥塞控制算法的实现

基于对google提出的bbr算法源码阅读的一些学习:

https://github.com/torvalds/linux/blob/master/net/ipv4/tcp_bbr.c#L39

并不详细介绍bbr的原理,也不逐行解释

拥塞接口

TCP底层的拥塞控制通过若干个定义在TCP层的接口被模块化了,不同的算法就可以直接hook对应需要的回调来实现不同的TCP拥塞控制算法。

Linux内核机制

  • 内核模块化,通过module_init和module_exit来初始化和卸载一个模块。
  • 模块开发不能使用常规的库函数[……]

    继续阅读

从零开始学布林线指标 读书笔记

认识布林线指标

布林线是一种路径指标,利用统计原理,求出股价的标准差,从而确定股价的波动范围及未来走势。

布林线副图是直接对均线求标准差,然后画两倍均线的图,主图是对Ma求出当前时刻的方差,然后将不同时刻的方差再滑动平均,

  • 布林线指标可以指示股价的支撑与压力位置。
  • 布林线指标可以指示市场或个股的超买与超卖状态。
  • 布林线指标可以指示市场或股价当前所处的趋势。
  • 布林线指标具备通道波状带作用。

布林线的形态应用

一般而言,形态可分为3种。

  • 顶部形态。
  • 底部形态。
  • 整理形态。

对每一个主要形态都有明确的分类,我们在[……]

继续阅读

如何读懂财报 读书笔记

这个是第一次尝试在IPad上做笔记,做起来很舒服,但是想把内容整理出来是个麻烦事儿。

也就是要么都用同一个手写软件做笔记,要么就不用手写软件做笔记。


















[……]

继续阅读

中国通史读书笔记

  • 读书

总结

历史不是一直是被分为近代史和非近代史嘛,钱老开篇便将历史划分为铜器、铁器、电器和原子能时代,开篇就被震撼到了,钱穆老先生的格局就是在人类大局观上,我们口中的“近代史”只是原子能时期生活的人将自己时代和古代划分开的一个说法。

然后就进一步想,为什么没有把通信方式纳入呢,原子能跨时代,计算机和无线通信也是跨时代的。我猜可能是这些只是提高了信息交换的速度,改变了获取信息的方式,会极大地改变人类的生活,但信息只是媒介。能推动人类历史的还是核心资料的生产:粮食,能源这些。

而且,历史原来是一件很主观的事情,历史上发生了[……]

继续阅读

TCP-Jersey拥塞控制介绍

  • 技术

介绍

TCP-Jersey拥塞控制算法在中文世界里的描述非常的少,有点好奇信号和丢包共同控制的算法是怎样的,就翻译了这篇论文,链接在最后。

传统TCP拥塞控制

传统TCP的拥塞控制算法是使用拥塞控制窗口来实现的,TCP发送端在发送时除了要兼容接收端的接收窗口,自己这边的发送窗口,还需要考虑拥塞控制窗口。在发送时,取min(w_{r}, w_{s}, w_c),其中w_r是接收窗口,w_s是发送窗口,w_c是拥塞窗口。

发生丢包事件时,拥塞控制窗口的长度会缩小到一半,然后线性增加逐步增加,即加性增,乘性减(AIMD)[……]

继续阅读

Unix编程艺术 读书笔记

1 哲学

  • 性能—时间的指数曲线对软件开发过程所引发的结果,就是每过18个月,就有一半的知识会过时。Unix并不承诺让你免遭此劫,只是让你的知识投资更趋稳定
  • 策略相对短寿,而机制才会长存
  • 对于程序员和开发人员来说,如果完成某项任务所需要付出的努力对他们是个挑战却又恰好还在力所能及的范围内,他们就会觉得很有乐趣。
  • 那些毫无动力、松松垮垮而且薪水微薄的程序员们,能在短短期限内,如同神灵附体般造出稳定而新颖的软件——这只不过是经理人永远的梦呓罢了。
  • 让每个程序就做好一件事。如果有新任务,就重新开始,不要往原程序中加入新功[……]

    继续阅读

量化炼金术:中低频量化交易策略研发

回测

真实的回测非常重要

推进分析

看着很像机器学习的交叉验证,但是实际上不是。

这个是相当于把分析拆分成多段,类似于用1~ 60跟K线决定第61根k线上操作的一些系数,根据2~ 61根K线决定第62根K线上操作的系数。

file

例如按照市值持仓,那每一个周期,就要更新持仓股票占比。

择时策略

  1. 双均线趋势策略,短线均线>长线均线,看多,否则看空
  2. 双均线反转策略,短线>长线看空,否则看多
  3. 自回归:通过线性回归
  4. 推进分析双线趋势策略
  5. 推进分析双线反转策略
  6. 推进分析混合策略

择股策略

  1. 市值
  2. 上个月收益反转因子[……]

    继续阅读