SQL3 查询结果去重题目连接
12select distinct university from user_profile
关键点:
使用DISTINCT关键字可以在查询中进行去重
同样,DISTINCT关键字也可以用在count()等聚合函数中,进行去重统计count(distinct field)
SQL4 查询结果限制返回行数题目链接
123select device_id from user_profile limit 2
关键点:
使用limit关键字可以限制查询的行数
检索记录行 6-10:SELECT * FROM table LIMIT 5,5
检索记录行 11-last:SELECT * FROM table LIMIT 10,-1
检索前 5 个记录行:SELECT * FROM table LIMIT 5
SQL8 查找某个年龄段的用户信息题目链接
1234select device_id, gender, agefrom user_profile# where age between 20 and 23where age>=20 and ...
背景在国债期货到期日,现货市场往往存在多个符合交割标准的债券,国债期货在交割中设计了转换因子制度。在转换因子制度下,每只可交割债券都有其相应的转换因子,通过转换因子可计算该可交割债券的交割价格。
要理解国债期货转换因子这个概念,还需要对国债期货本身的特征有一定的了解。首先要了解国债期货中的标准券:国债期货是标准化合约,合约标的是一个名义标准券,也可以说是虚拟券,这个设计的最大功能,就是可以扩大可交割国债的范围,增强价格的抗操纵性,减小交割时的逼仓风险。但是事实上,国债期货采用实物交割,空头交割时理论上需要用名义标准券去履约。但现实中名义标准券并不存在,因而交易所规定可以使用现实中存在的、满足一定期限要求的一篮子国债均可进行交割。但是在金融市场中,金融产品在价格上必须满足一对一的映射才能保证定价体系的平衡,否则会出现无风险套利机会。转换因子(Conversion Factor, CF) 就是实现一对一映射的纽带。
在我国各类国债期货中,他们对应的标准券如下:
2年期国债期货合约标的:面值为200万元人民币、票面利率为3%的名义中短期国债;
5年期国债期货合约标的是:面值为100万元人 ...
项目简介数据以及相关信息是在Kaggle上获取的
Credit Fraud || Dealing with Imbalanced Datasets | Kaggle
数据介绍本数据集包含欧洲持卡人在2013年9月中的某两天发生的信用卡交易,其中 284,807 笔交易中有 492 笔欺诈。数据集展现出高度不平衡的性质,正类(欺诈)占所有交易的 0.17%。
12345df=pd.read_csv('creditcard.csv')print(len(df[df['Class']==0]),len(df[df["Class"]==1]))plt.pie([len(df[df['Class']==0]),len(df[df["Class"]==1])],labels=['正常交易','欺诈'],autopct= '%1.2f%%')plt.show()
整个数据包含Time、Amount、V1、V2、…V28以及Class共31 ...
所谓Fair price就是我们通过模型和经验预测的资产在某一时间点的真实价值。所以交易的本质内在逻辑就是当市场价高于Fair price就卖出,否则就买入。
手机上展示效果较差,本篇博客建议在电脑浏览器中阅读
基本思路不管是用哪一方的策略,我们本质并不是通过预测资产的趋势来获取资本利得,而是通过频繁的交易获得资产波动时的价差。所以如果大量持有某一方向的头寸,会导致我们承受资产价格波动的风险,而且对于资金的利用不够完全,损失掉很多盈利机会。
因此,当我们的某一资产相对较多时,可以调低我们对他的fair price,让我们更容易将其卖掉,更难买入,直到两者平衡。基本思路就是将左图所示变化为右图所示,具体使用曲线函数还是分段线性函数需要具体尝试,也是我们不断优化策略的角度。
下面就给出了一个简单的调整方案可以参考,大家也可以调整参数看看变化情况。具体的,我们只需要保证买入价格高于卖出价格,曲线向左下倾斜即可。手机上展示效果较差,请在电脑浏览器中访问(若没加载出来稍等一下)
其他细节
具体看上图,图中的每个价格其实是每个相对资产对应的,也就是如果我们买卖100单位资产,其中每一单位资 ...
写在前面本文假设诸位对于各种专业名词有一定的了解,当然,如果对其中的专业名词还不熟悉,可以看一下这篇文章:[点击下载 Theory For Ready Trader One](/Theory For Ready Trader One.pdf)
对于Fair price,所谓Fair price就是我们通过模型和经验预测的资产在某一时间点的真实价值。所以交易的本质内在逻辑就是当市场价高于Fair price就卖出,否则就买入。
Market maker & Market taker首先要知道交易市场中存在maker与taker两种身份,其中maker是市场流动性的提供者,能够促进整个市场的交易,对整个交易所有利,所以maker在交易过程中的交易费较低,甚至是负的交易费;反之taker则需要像正常金融产品交易一样,缴纳相对较高的交易费。当然,如果maker获得了负交易费,那么该费用的绝对值一定比taker的费用低,否则交易所无法盈利。
从具体的行为上来看,在当前LOB中的一系列价格中,你下在一个位置,等待别人来交易,那你就是maker;反之,你直接选择一个交易对手报出的价 ...
什么是XGBoost首先,要了解GBDT(梯度提升决策树)是一种基于boosting增强策略的加法模型,其核心思想是通过迭代的方式,每次训练一棵CART(分类与回归树)来拟合前t-1棵树预测结果与实际训练样本真实值之间的残差。在训练过程中,GBDT采用前向分布算法进行贪婪学习,旨在逐步优化整体模型的预测能力。
接着,XGBoost(极限梯度提升)在GBDT的基础上进行了多项优化。例如,它对损失函数进行了二阶泰勒展开,使模型能够更准确地逼近最优解;在目标函数中加入了正则项,有助于防止过拟合;同时,XGBoost支持并行处理,大大加快了训练速度;并且默认对缺失值进行了处理,提高了模型的鲁棒性。这些优化使得XGBoost在可扩展性和训练速度上有了显著的提升,但其核心思想——通过迭代训练CART树来拟合残差——与GBDT保持一致。
XGBoost如何实现并行?boosting不是一种串行的结构吗?XGBoost怎么可以实现并行的?
XGBoost的并行不是tree粒度的并行,XGBoost也是一次迭代完才能进行下一次迭代的(第t次迭代的代价函数里包含了前面t-1次迭代的预测值)。
XGBoos ...
over里面怎么写?先写partition by col1,代表着我们在进行窗口函数计算时,先将数据按照col1列进行分组,与SQL的DQL语言中的group by一样。
其次,order by col2,代表着我们在进行窗口函数计算时,先将数据按照col2列进行排序,这对我们在进行排名类的操作时至关重要,同样的,与SQL的DQL语言中的order by一样。
最后是选取范围,要用到rows between …… and …… 关键字,从其英文含义上就很容易理解他的使用方式。具体的可选参数有以下几个:
unbounded preceding 前面所有行
unbounded following 后面所有行
current row 当前行
n following 后面n行
n preceding 前面n行
这几个参数可以根据你的需要进行组合,应该很容易理解。简单来说,就是将窗口函数的参数范围限制在了有限的行中,实现滚动窗口的左右。
排序类在窗口内进行排序。
row_number() over()
rank() over()
dense_rank() over()
ntile(n) ov ...
首先直接放出最终代码放在replace_url.sh文件中,然后运行bash replace_url.sh 即可,别忘了这个只能在bash中运行,windows的cmd是不行的,可以打开git bash后再运行。
123456789101112131415161718192021222324252627282930313233343536#!/bin/bash# 备份旧的IFS变量OLDIFS="$IFS"IFS=$'\n' # 修改分隔符为换行符before="https:\/\/cdn.jsdelivr.net"after="https:\/\/jsd.onmicrosoft.cn"# 计算当前目录下.md文件的数量file_count=$(find . -type f -name "*.md" | wc -l)count=0# 开始处理文件并显示进度echo "正在进行文件处理..."for md_file in $(find . -type f -name ...
安装1yum -y install screen
常用命令创建会话123screen -S myscreenscreen -U -S myscreen # 解决screen中中文乱码问题
显示已经创建的会话1234screen -lsThere is a screen on: 29085.myscreen (Detached)1 Socket in /run/screen/S-root.
离开会话
保持会话运行
1Ctrl+a
恢复会话1234screen -r 29085.myscreen # 别忘了加入前面的pidscreen -x 29085.myscreen # 也可以进入会话screen -U -r myscreen # 解决screen中中文乱码问题,要求screen是用screen -U -S myscreen方案构建的
关闭会话12exitctrl + d
其他技巧screen的移动由于开启screen后,你无法使用鼠标滚轮进行翻页,此时需要一些技巧开启“复制模式”,然后动用上下左右键移动光标找到你想要查看的内容。
121. Contr ...
事件循环是一种常见的运行机制,尤其在单线程的JavaScript语言中就采用这种机制,来解决单线程运行带来的一些问题。本文尝试用python来实现事件循环的基本逻辑与功能:
基本概念python的协程方案首先要了解Python中的异步编程,主要有以下几种方案:
twisted:使用事件驱动机制来提升python性能
gevent:使用greenlet在用户态完成栈和上下文切换来减少切换带来的性能损耗
tornado:使用生成器来保存协程上下文及状态,使用原生的python语法实现了协程
asyncio:异步编程标准化。
而本次就先介绍asyncio的异步编程标准化方案
协程
协程是一个可以在返回之前“暂停执行”的函数,它可以在一段时间内间接地将控制传递给另一个协程
1234# await将函数控制传递回事件循环(它暂停了周围协程的执行)async def g(): r = await f() return r
asyncio
Async IO是一种语言无关的编程范式,asyncio是与其对应的python包
async/await用于定义协程的py ...