自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(99)
  • 收藏
  • 关注

原创 pygame播放视频并实现音视频同步

但上述两个方案都存在“音画同步”的问题,因为无论是opencv还是moviepy都只负责将视频切片成帧,播放则是pygame自己在执行一个while循环来不停切换界面上展示出来的图片帧,这也就导致while循环很快就将帧播放完毕,而音频则还按着原有节奏缓慢播放。上述两个方案其实都是先将mp4的视频分离成“画面帧”和“mp3音频”,所谓的播放实际上是不停地在切换“画面帧”,同时播放音频,最终实现音视频的同时播放。4、再判断一下当前实际播放的帧是否已超过了理论应该播放的视频帧(是的话就跳过当前帧的播放)

2023-11-21 21:15:06 453

原创 FAST协议详解5 后记

后记:研究FAST最大的困难是资料太少,真的是比头发都少,一开始我也是没啥信心的,后来是正巧找到了深入理解FAST协议,一开始也看不懂,后来对照着fast英文的教程,同时也使用openfast对照着弄,终于是入门了。我自己感觉通过这几篇博文的撰写,基本研究清楚了FAST协议,自己手解了一下FAST数据,除了一些小细节外,大致都清楚了。1、openfast接口文档,可以对照着openfast来理解FAST协议,如果要openfast的使用方法可以翻以前的博文。3、FAST规范中文版,我感觉没啥用。

2023-09-07 15:26:59 369

原创 FAST协议详解4 存在图PMap

编码时若该字段有设置值,则PMap中该位值为1,表明字段不为空,应解析为预设值。编码时若该字段未设置值,则PMap中该位值为0,表明字段为空,应解析为null。编码时若该字段有设置值,则PMap中该位值为1,表明字段不为空,应解析为预设值。通过实例分析可见,PMap其实与操作符强相关,且大部分操作符都会使字段在PMap中占1位,占位目的是为了通过0和1来标识字段是否传输值,比如copy操作符,如对应PMap位为1则表明不传输该字段值,则解码时自动复制上一次解码结果。

2023-09-06 11:47:56 397 2

原创 FAST协议详解3 可null(空)类型

其中小数点位数部分若为10000000则表明字段为null,但正常传递浮点数时位数部分不需要再减去1,比如-2是“11111110”,只有传递1这样无小数点的数值时,由于其小数点位数为“10000000”,必须要再加1。可以看到,第二个字段值是2,但传输的是10000011(0000011->3),对于可空字段,解码时需要自行减去1,因为null把10000000占了,传递0需要使用1000001。注意这里00000100的值是4,而123字符串的实际长度是3,所以这里需要减去1。

2023-08-29 13:41:29 213

原创 FAST协议详解2 操作符

需要注意对于浮点数DECIMAL,其小数点位数也是差值传递的,比如上一条数据是小数点后3位,本条传递的数据最终结果若是小数点后2位,则小数点位数这里应传递+1,这样上一条的-3(小数点后三位)加上这里传递的+1,最终结果是-2(小数点后2位)。操作符是FAST进行数据压缩的法宝之一,比如一个递增的数字,如果通过传统方式传输(比如二进制)则每一次都需要传递一个完整的数字,而使用递增操作符后,则不需要再传递这个字段,接收方根据模版里的操作符属性,自动将该字段的值+1即可。但如果变了则还是传输。

2023-08-24 16:51:58 304

原创 FAST协议详解1 不同数据类型的编码与解码

FAST协议里不同的数据类型在编码时有非常大的区别,比如整数只需要将二进制数据转为十进制即可,而浮点数则需要先传小数点位数,再传一个整数,最后将二者结合起来才是最终结果。我们知道,在计算机中,对于有符号整数的二进制存储,是默认了,第一个位是1的话认为是负数,第一个位是0的话则认为是正数。分两部分进行传递,第一部分是字节向量的长度,遵循一般停止位规则。可以看到,在传输234这个值时,我们解码的方式是将2个字节分开,前面的字节转十进制后乘以128,后面的字节直接转十进制,然后两个十进制数相加。

2023-08-07 21:26:10 557 2

原创 跟姥爷深度学习6 卷积网络的数学计算

所谓池化就是将矩阵进行浓缩,浓缩的办法是从矩阵中提取其“较大”值,具体过程是根据池的大小(pool_size)将输入矩阵进行分拆,分拆成数个小矩阵,然后求出各小矩阵的最大值,最后将这些取出的最大值组成新的矩阵就是池化层的输出了。看上图,需要注意卷积核只有一组值,也就是输入分拆出来的16个小矩阵,依次与同样的W1+b1进行计算,计算方式是输入的每一个位与W1的对应位相乘,将乘积相加然后再与b1求和。含义是卷积核的大小,上面图片中的卷积核大小是3x3,我们示例用的是5x5的大小。下面只演示了第一层的计算结果。

2023-05-21 11:27:03 736

原创 FAST协议解析3 FIX Fast Tutorial翻译 HelloWorld示例

由于一个字段是由多个字节组成,所以当组成字段的多个字节中的某一字节的最高位被置为1,那就说明这个字节是这个字段的最后一个字节了。“HelloWorld”的十六进制格式为:H=0x48, e=0x65, l=0x6C, l=0x6C, o=0x6F, W=0x57, o=0x6F, r=0x72, l=0x6C, d=0x64。移除停止位得到“110 0000”。由于text字段由多个字节组成,所以我们需要逐个获取模版ID后的每一个字节,并找到停止位被置为“1”的字节,也就是text字段的最后一个字节。

2023-05-10 08:34:19 617

原创 跟姥爷深度学习5 浅用卷积网络做mnist数字识别

下面的简单代码可以自动下载mnist数据集,可以看到这个数据集是由28x28像素的图片组成,训练集有6W个图片,测试集有1W个图片,另外配套有等量的label。我们再将图片的数值输出来看,会发现5这个图片,其实是可以用数字矩阵来数字化的。其含义是图片数字为0的概率是0.04167002,1的概率是0.05634148,7的概率是0.93804836。这里我输出了前5个数字的识别,由于Y是one-hot格式,所以输出结果的格式是每一个“位”都输出一个值,这个值描述的是,图片数值在该位的概率。

2023-05-07 16:21:35 421

原创 FAST协议解析2 FIX Fast Tutorial翻译【PMap、copy操作符】

虽然FAST已脱离了市场数据(我理解这里指的是FAST压缩后的数据已无法直接阅读,而FIX可以),但它可以适用于所有FIX消息,并可以灵活的方式格式化传输FIX数据。FAST模板(template)定义了消息的字段布局(模版文件会描述各种消息有多少个字段,各字段的数值类型,各字段的先后顺序),因此传输的消息本身不描述各个字段的名称或标签。需要注意到,在第二段的FAST编码中,省略了模版ID字段,同时将PMap的第二位置为0,表明模版ID字段无值(所以我认为模版ID字段默认就有copy操作符)复用之前的值。

2023-05-05 16:11:18 874

原创 FAST协议解析1 通过输入输出逆解析

网络上无论是FAST协议本身,还是使用相关工具(openfast、quickfast)对FAST行情进行解析,相关的资料都是凤毛麟角,能够找到本篇的同学那是缘分不浅了。如果要理解FAST协议,建议还是先用会openfast或quickfast,先用现成的工具实现数据的编码和解码,然后再自己理解协议并手写编码解码,简单来说就是有个对照。本篇我们利用openfast来逆解析FAST协议,这么做之前,看相关文档资料即使是中文的也看不明白,但自己尝试了一下之后,发现即使是英文文档也能看明白了。

2023-05-04 08:33:32 1237

原创 跟姥爷深度学习4 从数学计算看神经网络

所以本篇我们从数学计算的角度来解读神经网络,方法是像前一篇那样构建一个最简单的网络,处理最简单的问题,然后手写一个“预测”函数,将整个预测的计算结果细化出来,并与TensorFlow预测结果进行比对。基于此,我想到,其实训练可能比较复杂,但训练好后的模型使用还是非常简单的,所以我们可以脱离TensorFlow的框架,在任意平台来应用训练好的模型,也可以针对性的对大矩阵的计算进行优化。在上面的代码中,我们模拟构建了3层网络(1:3:1),每一层所谓网络实际就是一次np.dot()的计算,也就是矩阵的乘积。

2023-04-21 22:56:13 788

原创 跟姥爷深度学习3 神经网络的调试实操

最后的最后,我突然想到3年前,第一次接触神经网络时,当时的教程说,如果要做“概率”预测,最好就将待训练的数据进行归一化,也就是将10、20、30,这样的数据,按正态分布转换成0.1、0.2、0.3这样介于0-1之间的数。正常应该是2、5、6,实际是2.3、4.3、6.3。为了解决这个问题,我构建了一个极简的问题和模型,从最简单的问题来入手,排查问题产生的原因,功夫不负有心人,还真给我排查到了。所以我增大了loss的幅度,并增加了训练的次数,然后网络就神奇的“收敛”了,而且收敛的特别好。预测的结果也非常好。

2023-04-17 22:28:04 440

原创 跟姥爷深度学习2 TensorFlow的基本用法

这一句的含义是生成由16个神经元组成的一层神经网络,其中Dense的含义是“一个常规的全连接NN层”,也是比较常规常用的层。形式为(X,y)的tuple,是指定的验证集。每次训练使用的数据量,一般设置成32、64、128这样,比如有10000个数据,这里你设置成64,那就是将所有数据分成156个组,每次将一组的数据放进去一起训练。当我们输入大量的X和Y值后,就能将w和b调教成更加合适的数值,w、b的值也就是我们的训练出来的模型,这样当我们需要预测时,输入一个X1就能得到一个合适的Y1。

2023-04-15 13:00:30 365

原创 跟姥爷深度学习1 浅用tensorflow做个天气预测

这里我们构建了一个16>32>1的神经网络模型,其中16、32、1指的是每一层的神经元数量,第一层与第二层的神经元数量无所谓可以随便写,第三层的1与预测的结果相对应,也就是我们使用前7天的平均温度,预测的是今天这“一个”平均温度。Val_loss是模型验证的“损失”,也就是前面我们设置的那10%,这个值越小说明你的模型验证的结果也不错。各字段的意思看名字就知道了,其中avg指的是当日平均温度,avg_befor1指的是昨天的平均温度,avg_befor2前天的,依次类推,一共回溯7天的。

2023-04-15 12:51:38 2248

原创 一个目标、番茄时间与百五定律

后来又听孙子兵法,具体说啥忘了,意思是你要集中精力做一件事,这样才能把事情做好,如果你啥都做,啥都能做好,那你不就是天才了吗,但哪里又来这么多天才呢,所以普通人就只做一件事即可,很多有成就的人一生就只做一件事,把这件事做好,剩下的交给时间。如果你成功坚持了一年,那恭喜你,这个东西已经变成你的一个好习惯,不需要你再去定目标了,比如你坚持了一年的锻炼,第二年你不需要再定锻炼的目标了,因为锻炼已经融入你的生活你可以定别的目标而锻炼缺不会停下来。3、如果按番茄世间法,学习25分钟后休息25分钟,也是学习2个小时。

2023-01-04 14:14:01 612

原创 信息化与数字化

但数字银行的大难题是银行间的数据共享,没人愿意把自己的数据给别人啊,所以微信支付宝这种三方支付软件反而崛起了,除了更加方便之外,他们主要是掌握了支付的入口,有了大量的支付数据就可以对用户进行画像,从而开展增值业务,比如消费贷啥的。在三方支付崛起前其实银行也是有这些数据的,为啥银行没做呢?数字企业的另一个角度是将内部系统都整合起来,但其实属于内部治理或者说是信息化的一部分,还上升不到数字化的程度,但也不妨碍大家拿着数字化的旗子来搞事情,毕竟要响应号召对吧,而且说是数字化也没错,但结果往往是达不到预期的效果。

2022-12-27 17:38:17 1054

原创 HCIA 以太网的帧

802.3 LLC是802.3的正式版本,与Ethernet II的区别在于它多了个Length字段和LLC控制字段(SDAP、SSAP、Control),网上说,相对来讲802.3 LLC比较能“控制”所以在交换机之间传输报文时,比如BPDU就使用802.3,我不太明白,但抓包后发现确实是这样,比如STP协议的BPUD报文就是802.3的帧,像下图这个。是网路中交换与传输的数据单元,也是网络传输的单元,报文包含了将要发送的完整的数据信息,其长短不一。在TCP/IP协议通信传输中的数据单元,也称为“包”。

2022-12-11 20:24:16 1178

原创 HCIA OSI参考模型

一、前言OSI七层模型是我们耳熟能详的,其实没有太多可以说的地方,我这里就按自己的理解做一下汇总。二、OSI 七层模型OSI七层模型是由“国际标准化组织”制定的“参考”模型。1、物理层实际上就是对网线、光纤等“连接”介质进行规定,比如我们拆开一根网线会发现它其实是由8根细线组成的,生产网线时大家都要按一定规范来,比如这些细线在水晶头中的顺序就很重要,如果你打线的时候搞错了线序那网络自然是不会通的。 物理层比较有名的协议就是RJ45,有些场景下我们直接就说这个网络设备是RJ45接口或者用RJ45线,其实就是

2022-12-07 21:54:08 762 1

原创 HCIA 访问控制列表ACL

从名字上看ACL访问控制列表就是一张表,表里列了一行行的控制条件,其特性是在进行某个访问时就来查看这张表,先从第一条开始看,如果满足条件就执行这个控制条件然后结束,如果不满足这个条件就继续看下一条,直到把表内所有控制条件都看完。需要注意的是,路由器中可以自定义多个列表,不同的表编号还决定了它的功能特性。接着需要说的是,由于ACL这样的特性,每次有访问都需要看ACL控制表,那问题就来了,如果你写的规则特别多,可能就会直接影响路由器的效率,这也就是为什么路由器有ACL的功能我们还是需要防火墙。

2022-11-25 20:34:11 447

原创 HCIA 链路聚合与LACP

所以实际工作中聚合链路是按“流”的方式来负载分担的,比如发给IP1的包全部都走E0/0/1,发给IP2的包全部都走E0/0/2,这样就避免了包的乱序。原理不复杂,如下图所示。虽然很多文章在介绍链路聚合时会从链路备份的角度来介绍链路聚合的作用,然后再说其有提升链路带宽的作用,但我感觉链路聚合主要还是提升链路带宽的作用,链路备份只是顺带的不是主要目标。就目前我找到的资料,链路聚合都是手动的,并不是LACP就自动了,它一样需要配置参与聚合的链路,但在一定程度上它实现了自动化,但不是聚合本身的自动化。

2022-11-20 16:03:04 2229 1

原创 HCIA VLAN间通信与三层交换

原因除了有VLAN的限制,他们本来也就不在一个网段无法通信的。本篇讲的VLANIF其实就是用于代替路由器实现VLAN间互通的一种功能,我觉得还是需要与交换机的路由端口进行区分,有些地方把交换机的路由端口也说是三层交换,这我感觉有点扯了,交换机配上路由端口那就是真真的路由功能,就好像有些路由器也会带交换端口一样。对于交换机组成的网络,如果路由器只是用于跨VLAN(跨网段)的通信感觉还是有点浪费,所以就有了所谓的三层交换,也就是在交换机内部实现类似路由器的功能,但毕竟还是与真实路由器有一些不一样的地方。

2022-11-13 20:33:33 401

原创 HCIA VLAN间通信 多臂路由与单臂路由

上面的多臂路由可以将不同的VLAN连接起来实现VLAN间的通信,但很明显的问题是一个VALN就需要占用路由器一个端口,所以在经济上很不划算(路由器的端口比较贵),所以有没有不占用那么多端口的方案呢?本篇我们先回顾了之前提过的组网方式,提出了VLAN间通信的问题,接着讲了使用路由器来解决VLAN间通信的问题,先是讲了多臂路由,一个对应一个VLAN,但成本较高,接着讲了单臂路由,使用路由器子接口(子端口)来实现VLAN间通信,效果一样但成本极低。但对于企业内部来说,子网的划分又依赖路由器的数量,成本比较高。

2022-11-12 09:59:33 963

原创 HCIA HYBRID端口

但HYBRID并不只是有一个加强版ACCESS端口和一个代替TRUNK端口的模式,HYBRID有趣的地方在于其模式的混搭,也就是你可以这三个配置模式混搭在一个端口上实现许多出人意料的应用。可以看出来,这两个模式可以组合使用,组合起来就是一个强化版的ACCESS端口,比ACCESS强的地方在于它可以转发多个VLAN数据(端口出方向),而不是进出都限制了某一个特定VLAN。2、port hybrid untagged vlan 10 20,数据出端口时去掉VLAN10或VLAN20的标签。

2022-11-08 20:49:27 650

原创 HCIA VLAN原理

一、前言VLAN在网络中常用且重要,我们在用户接入时经常要说的是“给他划个VLAN”,那我们为什么需要VLAN,而VLAN又如何使用呢?本篇先简单说下VLAN的原理,以后再详细介绍。本篇参考了以下链接的大量内容:https://blog.csdn.net/phunxm/article/details/9498829二、广播域与VLAN之前在学习交换机相关知识时,比如ARP协议就是依赖于广播报文来实现其“发现目标MAC”地址的功能,所以在交换机网络中,广播是非常重要的,因为交换机最重要功能就是“交换”,无条件

2022-11-06 11:11:18 674

原创 HCIA 动态路由与OSPF原理

前面我们逐步学习了交换机原理、路由器原理、ARP协议、静态路由,简单来说交换机负责MAC地址这一层的通信,路由器负责IP地址这一层的通信,而ARP协议则是帮助交换机生成MAC地址表,帮助PC机生成ARP表,如此PC机的数据就可以无障碍到达路由器,接着路由器依据其路由表将数据发往对应IP所在的端口,依次传递实现跨网段的通信。SPF算法这里也先不做讨论。开放的含义是其算法是公开的,大家都可以用,而且大家执行一样的标准就可以互相通信了,毕竟生产路由器的厂家千千万,大家执行一个标准才能够互相通信。

2022-11-02 20:25:57 280

原创 HCIA 静态路由

路由器的端口可以隔离广播域,避免因为网络太大导致广播风暴,同时路由器的端口可以像PC一样接收数据,同时依据路由表来查询目标IP所属的广播域并转发到相应的端口,以此完成不同广播域的数据传输。我们查看下AR2的路由表,确实没有到172.16.1.0的路由。本篇我们顺着路由器原理讲了下“直连路由”,接着讲了静态路由在路由器网络中的简单应用以及路由器端口的IP配置,同时也解答了一个奇怪的现象,那就是直连路由中PC为何可以响应ICMP报文而直连的路由器端口却不可以(因为路由器没有默认网关,必须有路由才行)。

2022-10-30 20:13:18 302

原创 HCIA 路由器原理

如下图所示,PC3目标IP是192.168.2.11时,它知道这个IP不在当前交换机网络中(至于它是如何知道的以后再说),所以它会将包发给网关,但它只知道网关的IP不知道MAC呀,这时候其实还是ARP协议发挥作用(补一句,路由器的每个端口除了能配置不同IP外还都有独立的MAC地址)。PC的网络配置中有一个“默认网关”的设置就是干这个的。而交换机实现其功能的大前提就是各端口间是“互通”的,而且串联、级联在一起的交换机,所有端口都是“互通”的,这在便利的同时也产生了新的问题,路由器就是用于解决这个问题的设备。

2022-10-27 21:12:47 1042

原创 HCIA 交换机原理与ARP协议

但如果网络比较大,或应用比较多,大量的PC需要互相通信,那集线器这样的东西肯定不行了。交换机(Switch),在网络通讯中属于非常重要而基础的设备,常见资料往往侧重于介绍某一点或对某个名词的解释,本文试图从用户使用的角度来理解交换和交换机,不过仅限于HCIA的层次,也就是比较浅层但希望是可以比较全面和实用。其实从名字看,我们就能大概知道交换机的作用是在网络中“传递”数据的,而且是默认不带限制的“传递”,但传递这个词比较偏向于一对一的传递,而交换机是多对多的传递,所以交换机这个名字就取的很好。

2022-10-23 22:52:38 1559 2

原创 HCIA STP的端口状态与BPDU

由STP的机制可知,一开始所有交换机都认为自己是“根桥”,他们会将BPDU报文中的Root Identifier字段设置为自己的BID并向网络中其他交换机发自己的BPDU,具体怎么发的不知道,但是我们知道网络中所有交换机都能收到其他交换机的BPDU就行了。1)路径开销,就是端口的带宽,带宽越大开销越小,端口总开销的计算是“将根桥到达端口前所有’入’端口开销加起来”,这里只计算入口不计算出口,总开销较小的就是根端口。4)本端PID,如果对端PID也一样,那就比较本端的PID,较小的就是根端口了。

2022-10-20 21:42:12 2340

原创 HCIA STP原理

通过“dispay stp”命令,可以查看CIST Bridge这个值,其中32768就是优先级,4C1F-CC33-2ADE就是MAC地址,可见所有交换机默认优先级都是一样的32768,那就比较MAC地址较小的,其中LSW4的MAC地址相对最小,所以它就是根网桥,其他除LSW4之外的就是非根网桥。同理LSW1的根端口是E0/0/2。最后看一下LSW1,一个根端口一个阻塞端口,其中Alternate是备用的意思,所谓阻塞端口也就是备用端口的意思,当其他链路出现故障时,这个端口会被启用作为备用的意思。

2022-10-16 21:35:56 584

原创 上交所FAST行情接口对接

之前已完成了Binary行情的解析,接着便继续研究FAST(STEP)行情,但花费了将近一个月时间才终于搞定了。前面说过Binary格式的行情不太直观,所以对于初学者有点难度,接触FAST后才知道什么叫“完全看不明白”。还好互联网是伟大的,大佬们偶尔留下的只言片语对我们来说就是难得的启迪了。

2022-10-15 10:32:34 2816 3

原创 上交所Binary行情接口demo

另外浮点数怎么转换呢?比如uint64,N13(5),其含义是字段占用为64位的无符号整数,传输的数值是13位的,其中最后5位是小数位,比如我们传输1234567890123,其中整数位是12345678,小数位是90123,结果是12345678.90123。意思是流行情传输时像一条不停向你流动的河,在任意时间你从buffer中截取的数据可能有多有少,也可能只有一半,所以从socket获取到数据后,你先要把数据拼接起来,再找到有效的head和checksum,这两个之间的数据才是完整的数据。

2022-09-14 14:35:27 2226

原创 从小朋友抢饼干想到的传统思想和管理学智慧

1、孔融让梨,一个道德绑架的故事  孔融让梨是中国人耳熟能详的故事,但放到今天则成了道德绑架的经典。  李贤注解的《后汉书·孔融传》中的《融家传》记载:”孔融四岁的时候,和哥哥们一起吃梨,孔融总是拿小的吃。有大人问他为什么这么做。他回答说:"我年龄小,食量小,按道理应该拿小的。“由于孔融这么聪明早慧,很小就懂得这样的道理,宗族亲戚们认为他是个奇才。”  就是上面这么一折故事,小时候家长老师用来教育我们要懂得恭让,但这很明显是一个反直觉反人性的故事。  也就是从近几年开始,网上出现了大量对孔融让梨的批判,而我

2022-08-12 00:19:00 247

原创 孙子兵法随感

近期又在复习华杉讲透孙子兵法,有感而发。  华杉在课程中多次强调的重点即是“孙子兵法不是战法,而是不战之法;不是战胜之法,而是不败之法;不是以少胜多之法,而是以多胜少之法”。  实际上直接阅读孙子兵法是很难自己总结出这样的道理,所以听到华杉这样的总结感觉很颠覆,但听他细细讲解后又感觉确实如此!  “不是战胜之法,而是不败之法”,这句话特别有感触,真真讲透了我这前半辈子,东搞搞西搞搞,最后啥也没搞出来。  我一直是一个闲不下来的人,大学的时候就喜欢“搞点东西”,但搞点东西的意思就是啥也没搞出来,什么都是浅尝而

2022-07-24 21:33:14 593

原创 信息系统架构与国产替代

1、概述  以前我们讲国产替代主要是说国产"CPU"、”操作系统“、”功能芯片“等单个器件或系统,而随着近几年的发展,国产替代已初步具备了一定规模,能实现从电子元器件、底层硬件、芯片到操作系统的全面替换。本文就是结合近期所思所学对国产替代这一概念进行系统性的总结,并分析目前存在的问题和未来改进方向。2、信息系统的基本架构  信息系统是由软硬件组成的复杂系统,一般认为其组成部分包括服务端、网络和客户端,而单个组成部分又由更多的模块组成,如下图所示是一个简单的示例,列明了信息系统主要的组成部分也是我

2022-05-12 09:28:23 2152 1

原创 曾氏通道的python实现

1、概述网上关于曾氏通道的描述并不多,似乎应用也很少,还没有深入研究,只是转成了python形式2、公式excel格式的:https://share.weiyun.com/fciZSeNL3、python实现,基于极星量化import talibfrom scipy import statsimport mathimport numpyfrom scipy.stats import normXseqG = []YlogG = []Regression_Line_yG

2022-02-20 19:50:40 1673

原创 TICK回测研究四,合成K线的问题分析

概述K线合成是指将原始的TICK数据按时间范围进行汇总,如下表所示的TICK数据, 时间 价格 成交量 2021年11月15日09点13分22秒000毫秒 192 1 2021年11月15日09点13分22秒250毫秒 190 2 2021年11月15日09点13分22秒500毫秒 1

2021-11-17 17:41:57 2434

原创 PYTHON前端几个框架的比较

一、概述  我准备做一个个人站,把这些年积累的文章整理下、汇总下,最近python用的多,就想看看万能的python现在能不能做网站了,后台当然我们知道是有的,前端之前是没有的,结果这一搜还真有了几个框架  Streamlit、Brython、remi、pywebio  我的需求就是常规个人站,然后需要绘制一些图表,需要绘制K线,我就按这个需求来比较下这几个框架那个更合适。不过也可以先搞个简单的架子,后面用PHP+JS来做子页面。所以要求并不高,先搞起来就好。二、streamlit  绘

2021-11-07 18:11:30 4927

原创 TICK回测研究三,数据获取部分完整的方案和实现

一、概述  前面分别研究了自动获取历史的tick数据和压缩存储,接下来就是怎么实现整个全自动的流程,同时要考虑要用的时候该怎么办。二、全自动的数据存取方案  1、已实现的功能  前面我们将合约放到自选里,以此来读取合约号,极星上,内盘共6所,ZCE、DCE、SHFE、INE、CFFEX、SGE,其中ZCE、DCE、SHFE合约比较多可以单独分配一个自选页面,INE、CFFEX、SGE放到一起,这样就只需要占用4个自选页面,够用。  从自选里读到合约后就依次去读合约号,并订阅TICK数据,

2021-11-07 17:45:07 768

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除