开盘策略的探索
开盘5分钟价格反转的探索 动机说明 市场中经常存在过度反应和跟风的现象, 反映在价格表现上即过冲. 偏离市场均衡价格的资产会在供需关系的调整中向均衡价格调整. 从交易时间和交易量的关系来看, 这种偏离和回复的过程最容易发生在开盘阶段, 因为此时的交易量很大, 且市场刚刚开始交易, 需要时间从偏离的价格回到均衡. 于是我们探求以下可能性: 当开盘的价格与前一天收盘价格相差较大 (跳空) 时, 市场很有可能出现了过度反应的表现, 因此在开盘的短时间内价格可能会反向变动. 通过刻画这样的规律, 我们可能可以在其中获利. 实证检验 我们使用近十年的期货5分钟频率交易数据, 检验此猜想的正确性. 由于期货交易存在夜盘, 开盘的时间可能在晚上九点也可能在早上九点. 在统计过程中我们选择每个收盘数据 (下午三点) 的下一条作为开盘的数据, 计算开盘价格与收盘价格的差距 DIFF, 并使用开盘第一条数据的 open 和 close 价格计算对应的收益 PNL. 但是应当注意的是: 开盘时期价格变动快, 考虑到交易上的细节 (滑点和延时等),...
Docker入门
Docker 入门 这篇文章讲讲 Docker 的入门级使用. 最初使用 Docker 是编译原理的大作业, 助教提供了配置好的 Docker 镜像, 这样就免去了系统与环境配置的烦恼. 购入了苹果的 Apple Silicon 芯片笔记本之后, 又开始考虑运行 x86 程序的问题. 这里只是记录下 MacOS 安装使用过程中遇到的问题, 不做深入讨论. 安装完 Docker 后, 需要打开 Docker 才能在终端执行 Docker 相关命令. 这里有镜像和容器的概念, 简单理解就是镜像是用于分发的打包文件, 在实例运行时(一般)会基于镜像创建一个容器(运行实例), 而一个镜像可以被多个容器使用. 在需要上传到 Dockerhub 时, 又要把容器打包成镜像. 寻找需要的镜像 首先我们要找到需要使用的镜像文件. Dockerhub 提供了众多官方与非官方的打包镜像. 这里以 Ubuntu 作为演示. 搜索 Ubuntu 并进入官方链接后, 右侧显示有最基本的拉取镜像方法: 1docker pull ubuntu 这会根据系统的架构自动拉取最新的镜像. 但是我们这里需要用...
CLoudFlare部署静态网站
CLoudFlare部署静态网站 在之前的文章中, 已经实现了纯 ipv6 网页的 ipv4 代理, 极大增加了可访问性. 但是这样就需要家中的服务器始终在线, 网络环境的稳定性也十分重要. 现在想要更进一步, 把这些静态内容直接托管, 岂不是美滋滋? 现在许多代码托管平台都提供了静态网页的部署, 但是能够申请到的仅仅是三级域名. 而且主流的 Github 在大陆的访问非常不稳定. 今天查看 Cloudflare 控制台时发现有 pages 选项卡, 可以部署一些网页, 且可以直接从代码托管平台接入, 于是马上尝试. Github 接入 Cloudflare 并设置 Gitee 自动推送 转了一圈还得是 Github 啊, 下面原先的 Gitlab 还是比较麻烦. 事情的起因是这样的, 虽然 Gitlab 可以访问但是速度还是不尽人意. 且下面我看到明明可以设置 mirror 实际上并没有做到, 实现起来各种问题. 然后我看到 Gitee 支持与 Github 的双向同步了 (其实是两个单向拼起来的实际上也建议只开一个方向不然可能会有代码丢失的风险), 那我何不直接使用...
Ubuntu 22.04 安装qBittorrent
Ubuntu 22.04 安装qBittorrent 这期来讲一下怎么在 Ubuntu 安装最新版本的 qBittorrent. 方法一: apt 直接安装旧版 12sudo apt-get updatesudo apt install qbittorent 这样可以安装旧版本的 qBittorrent, 应该是 4.4.X. 方法二: 添加 PPA 软件源 安装add-apt-repository命令 1sudo apt-get update && sudo apt-get install software-properties-common -y 添加qbittorrent的PPA软件源 1sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-stable 安装qbittorrent-nox, 这里 nox 指的是没有图形界面 1sudo apt-get update && sudo apt-get install qbittorrent-nox -y 方法三:...
使用Cloudlare配置openai转发并部署网页版ChatGPT
使用CloudFlare配置openai转发并部署网页版ChatGPT 众所周知, 在国内访问 ChatGPT 有各种各样的麻烦, 各种代理的 IP 被封也就算了, 乱登录可能账号都难保, 尤其是现在毛子的电话号码网站没了的情况. 实在是无法忍受代理粗糙的性能, 我决定在自己的电脑上搭建一个网页版的 ChatGPT, 通过调用 API 实现大部分的功能, 且全程合法合规, 甚至不会用到 VPS. 大致的思路分为两步: 首先openai 的 API 是无法直接访问的, 其次拿到了 API 相当于是最底层的接口, 直接用 POST 方法人工操作显然很愚蠢且麻烦, 需要套一层壳. 注意, 这两步都一定要亲自实现, 否则会有极大的安全问题. 因为所有的 POST 方法都会把内容明文传输. 我记得前段时间明文传输密码的 P大树洞 还出来洗地说 HTTPS 保障了安全, 简直是无稽之谈. HTTPS 只能保证端到端的安全, 甚至连访问的 IP 都清晰可见, 两端肯定是要解密的呀. 要是用了别人的 API 代理, 对方可以直接看到你的 API Key 以及所有的问答内容;...
Windows下Webhook调用PHP实现网站自动部署
Windows下Webhook调用PHP实现网站自动部署 引言 为了远程维护的方便以及更好的兼容性和可扩展性, 我把网站部署在了基于 windows 的 Nginx 上, 这样每次我要发布新的内容的时候, 我就会远程登录windows界面, 然后把相应的内容生成到网站文件夹里. 在之前的文章中, 我已经实现了 IPv4 访问我纯 IPv6 的网站, 但是远程桌面依然不能走代理. 那现在如果可以不用远程界面就自动部署网页, 会极大减少维护的时间. 操作的想法非常简单, 就是我在 Gitee 创建一个我网站文件夹的仓库在我每次要更新的时候我就在远程电脑把内容 push 上去. 在收到 push 之后, 我希望我的服务器能够自动的执行 pull 操作, 这样子我的网站就被自动更新了. 前段时间在搜索相关信息的时候, 我看到了 Webhook, 就是 WebHook 被触发后, 自动回调一个设定的 http 地址. 网址可以动态解析发来的数据并做出相应操作, 然后返回此次调用的结果. Webhook Webhook 是一种 HTTP 回调, 允许应用程序通过发送 HTTP...
使用CloudFlare代理个人网站
使用CloudFlare代理个人网站 引言 现在这个三大运营商基本上都会给 IPv6 的公网地址, 所以我们如果需要从外网访问家里的内容, 只需要直接使用 IPv6 的地址就可以访问到. 如果访问上有什么问题, 首先检测一下家里的硬件是不是支持, 然后确定光猫宽带上的 IPv6 已经打开. 如果是近几年新装的宽带的话, 拨号的光猫都会支持 IPv6,所以即使路由器不支持 IPv6, 直接使用光猫拨号, 把家里的路由器当成交换机就可以使用 IPv6 了. 现在光猫性能都不差, 已经不太会有影响到拨号性能的问题了. 所以如果不使用软路由的情况下, 基本上都不会有问题; 如果使用的是桥接后软路由拨号, 我认为有这样的要求设备肯定也不会有兼容性问题问题. 现在的公网 IPv6 给的都是浮动地址, 过一段时间就有可能改变. 如果想用固定的方式访问, 可以绑定到自己的域名后使用 DDNS 服务更新 IP 的变化. DDNS-GO 是一款比较好的软件, 主流的 DNS 服务商都能有很好的支持. 但这部分不是本篇的重点, 教程也有很多,...
单纯形法求解线性规划
单纯形法求解线性规划 线性规划问题 线性规划问题是在一些线性约束下求解目标函数极值的问题. 在二维的平面上, 每个线性约束确定了一条直线的某一侧. 一些线性约束最终形成了一个区域. 从几何直观上很容易看出这个区域一定是凸的, 也就是任意两个可行点的连线上都是可行点. 目标函数对应了一组平行的直线, 移动这条直线使得其与可行范围有交点, 则直线对应的目标函数值 zzz 就是可达到的. 所以在高中里求解二维线性规划问题就是画图后求解可行区域的角点对应的目标函数值, 从中选出最大或者最小的作为极值(在线性规划有解的情形下). 但是高维的线性规划问题无法直观画图, 也就不能用直观的办法解决. 一般形式的线性规划问题都可以转化为以下标准形式: maxz=cTxs.t. {Ax=b≥0,x≥0,\begin{align*} \max & \quad z = c^T x \\ \text{s.t. }& \left\{ \begin{array}{ll} A x = b \ge 0, \\ x \ge 0, ...
求解纳什均衡点(Lemke-Howson算法)
求解纳什均衡点 基本知识回顾 两个人的双矩阵博弈可以这样描述: 两个玩家 M 和 N 各有 m,n 个纯策略,当 M 使用纯策略 i 而 N 使用纯策略 j 时,M 的收益是 aija_{ij}aij, N 的收益是 bijb_{ij}bij. 用 A 和 B 表示由 aija_{ij}aij 和 bijb_{ij}bij 构成的矩阵. M 的混合策略 x=(x1,x2,⋯ ,xm)Tx = (x_1,x_2,\cdots,x_m)^Tx=(x1,x2,⋯,xm)T是指玩家 M 以概率 xix_ixi 使用第 i 个策略,其中 x1+x2+⋯+xm=1x_1 + x_2 + \cdots + x_m = 1x1+x2+⋯+xm=1, 同理 N 的混合策略是 y=(y1,y2,⋯ ,yn)Ty = (y_1,y_2,\cdots,y_n)^Ty=(y1,y2,⋯,yn)T. 用矩阵的形式,一个混合策略 (x,y)(x,y)(x,y) 如下定义: eTx=eTy=1, and x≥0,y≥0(2)e^T x = e^T y = 1,\text{ and...
基于xcfe4和xrdp的WSL图形界面
基于xcfe4和xrdp的WSL图形界面 如果只要使用单个应用, 微软官方有教程, 直接照着做就好了. 更新本地软件数据库 12sudo apt-get updatesudo apt update 安装桌面 xfce4 和远程服务器 xrdp 1sudo apt install -y xfce4 xrdp 如果有这个选项, 选择 lightdm 据说能有更好的体验. 有人说还要 sudo apt install xorg, 但是我不安装好像也没有问题, 好像自动也安装了. 解决和windows的端口冲突 xrdp 服务器默认使用 3389 端口, 会和本机Windows的远程桌面冲突, 这里可以改为 3390. 1sudo vim /etc/xrdp/xrdp.ini 把 port = 3389 改成 port = 3390 (或者任意一个你喜欢且不冲突的端口). 注意, 如果 wsl2 使用了虚拟交换机的桥接网络, 则虚拟机会有一套自己的ip地址, 使用这个ip在局域网内的其他电脑也是可以连接到虚拟机的. 但即便如此, 也尽量不要让端口冲突, 因为本机使用...