如何建立自己的算法交易

作者&投稿:曲刚 (若有异议请与网页底部的电邮联系)
~

一、传统方法

在某些假设下的显式最优策略

  • 【Bertsimas, Dimitris, and Andrew W. Lo. "Optimal control of execution costs."Journal of Financial Markets1.1 (1998): 1-50.】这里假设了不同的价格冲击函数,然后求解得到最优的交易执行方案。根据参数的不同,最优的策略要么是全部开头卖掉、均匀减仓、或者全部最后卖掉。 https://stuff.mit.edu/afs/athena.mit.edu/user/d/b/dbertsim/www/papers/Finance/Optimal%20control%20of%20execution%20costs.pdf

  • 【Almgren, Robert, and Neil Chriss. "Optimal execution of portfolio transactions." Journal of Risk 3 (2001): 5-40. 】这篇文章我们专栏前面有讲过,很著名的 Almgren-Chriss 模型。 https://www.smallake.kr/wp-content/uploads/2016/03/optliq.pdf张楚珩:【交易执行】Almgren-Chriss Model

  • 【Guéant O, Lehalle C A, Fernandez-Tapia J. Optimal portfolio liquidation with limit orders[J]. SIAM Journal on Financial Mathematics, 2012, 3(1):740-764.】这篇文章我们专栏前面也有讲过;前面的 Almgren-Chriss 其实考虑的是使用市价单,而这里考虑使用限价单进行交易。 https://arxiv.org/pdf/1106.3279.pdf张楚珩:【交易执行】限价单交易执行

  • 【Guéant, Olivier, and Charles‐Albert Lehalle. "General intensity shapes in optimal liquidation." Mathematical Finance 25.3 (2015): 457-495.】这里也是考虑限价单进行交易,但是与前面不同的是:前一个假设限价单考虑的成交概率随着价格指数衰减,而这里考虑了一个更加一般的形式。 https://arxiv.org/pdf/1204.0148.pdf

  • 【Cartea A, Jaimungal S. Optimal execution with limit and market orders[J]. Quantitative Finance, 2015, 15(8): 1279-1291.】这里考虑同时使用限价单和市价单进行交易,从而能够完成 Almgren-Chriss 模型所规定的方案,或者找到一个更有的交易方案。 https://sci-hub.se//https://www.tandfonline.com/doi/abs/10.1080/14697688.2015.1032543

  • 【Bulthuis, Brian, et al. "Optimal execution of limit and market orders with trade director, speed limiter, and fill uncertainty." International Journal of Financial Engineering 4.02n03 (2017): 1750020.】也是考虑使用限价单和市价单一起交易。 https://arxiv.org/pdf/1604.04963.pdf张楚珩:【交易执行】市价单+限价单 最优执行

  • 【Cartea A, Jaimungal S. Incorporating order-flow into optimal execution[J]. Mathematics and Financial Economics, 2016, 10(3): 339-364.】这里考虑市场所有交易者的订单都会产生线性的短期/长期市场冲击,因此可以估计未来一段时间的订单流向(买单总量和卖单总量的差),从而能够在 Almgren-Chriss 模型的基础上进行一定的调整,使得策略更优。 https://sci-hub.se//https://link.springer.com/content/pdf/10.1007/s11579-016-0162-z.pdf

  • 图书

  • 【Cartea Á, Jaimungal S, Penalva J. Algorithmic and high-frequency trading[M]. Cambridge University Press, 2015.】讲交易执行的基础上,更侧重讲了一些数学工具。

  • 【Guéant O. The Financial Mathematics of Market Liquidity: From optimal execution to market making[M]. CRC Press, 2016.】从 Almgren-Chriss 模型开始讲,一直到相应的拓展和实际的问题,十分推荐。

  • 融合对于市场环境隐变量的估计

  • 【Casgrain P, Jaimungal S. Trading algorithms with learning in latent alpha models[J]. Mathematical Finance, 2019, 29(3): 735-772.】市场交易者会根据不同的市场挂单和价格走势而采取不同的反映,因此我们也可以根据历史数据学习到各种情况下的价格后验分布,从而更好地帮助我们进行交易执行或者套利。最后的结果可以看做在 Almgren-Chriss 模型的基础上外加了一个调控项,反映我们对于未来的预期。 https://arxiv.org/pdf/1806.04472.pdf

  • 如何实现以按量加权平均价格(VWAP)交易

  • 【Kakade, Sham M., et al. "Competitive algorithms for VWAP and limit order trading." Proceedings of the 5th ACM conference on Electronic commerce. 2004.】从在线学习的角度提出了几个用于使得我们交易到 VWAP 价格的模型。为什么会关注 VWAP 的交易执行?当大的流通股股东需要减持的时候,为了避免直接出售引起的价格波动,一般是把需要减持的股票卖给券商,然后由券商来拆单出售,而交易价格一般为未来一段时间的 VWAP,因此券商需要尽量以 VWAP 来交易执行。 https://sci-hub.se//https://dl.acm.org/doi/abs/10.1145/988772.988801

  • 【Białkowski, Jędrzej, Serge Darolles, and Gaëlle Le Fol. "Improving VWAP strategies: A dynamic volume approach." Journal of Banking & Finance 32.9 (2008): 1709-1722.】改进对于交易量的建模,从而得到更好的 VWAP 交易算法。把交易量拆分为两个部分,一部分是市场整体的交易量变动,另一部分是特定股票上的交易量模式。 https://sci-hub.se//https://www.sciencedirect.com/science/article/pii/S0378426607003226

  • 以按时间加权平均价格(TWAP)交易

  • 为了对称,可以介绍一下另一种加权平均的情形 TWAP,这种情形实现起来相对比较简单;如果不考虑市场冲击,就拆分到每个时间步上均匀出售即可实现。

  • 可以证明 TWAP 交易在以下两种情形下最优:市场价格为布朗运动并且价格冲击为常数;对于晚交易没有惩罚(其实更晚交易意味着面临更大的风险),但是对于最后未完成交易的惩罚较大。

  • 二、强化学习方法

    基于传统模型的强化学习方法

  • 【Hendricks D, Wilcox D. A reinforcement learning extension to the Almgren-Chriss framework for optimal trade execution[C]//2014 IEEE Conference on Computational Intelligence for Financial Engineering & Economics (CIFEr). IEEE, 2014: 457-464.】本专栏有讲。 https://arxiv.org/pdf/1403.2229.pdf

  • 强化学习 + 交易执行(Paper/Article)

  • 【Nevmyvaka Y, Feng Y, Kearns M. Reinforcement learning for optimized trade execution[C]//Proceedings of the 23rd international conference on Machine learning. 2006: 673-680.】比较经典的一篇,发在 ICML 上,本专栏前面有讲。使用 DQN 方法,实现形式接近 DP。 http://smallake.kr/wp-content/uploads/2019/01/rlexec.pdf

  • 【Dabérius K, Granat E, Karlsson P. Deep Execution-Value and Policy Based Reinforcement Learning for Trading and Beating Market Benchmarks[J]. Available at SSRN 3374766, 2019.】使用了 DDQN 和 PPO 方法,基于生成的价格序列来进行实验,使用特定的模型考虑短期和长期市场冲击。 https://sci-hub.se//https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3374766

  • 【Ning B, Lin F H T, Jaimungal S. Double deep q-learning for optimal execution[J]. arXiv preprint arXiv:1812.06600, 2018.】DDQN 的强化学习解法,在美股上实验。 https://arxiv.org/pdf/1812.06600.pdf

  • 【Lin S, Beling P A. An End-to-End Optimal Trade Execution Framework based on Proximal Policy Optimization[C]//IJCAI. 2020: 4548-4554.】使用 PPO 的解法,比较有意思的是这里面的实验结果显示,使用 LSTM 和把历史数据全部堆叠起来用 MLP 效果差距不大。也是在美股上实验。 https://www.ijcai.org/Proceedings/2020/0627.pdf

  • 【Fang Y, Ren K, Liu W, et al. Universal Trading for Order Execution with Oracle Policy Distillation[J]. arXiv preprint arXiv:2103.10860, 2021.】在使用强化学习的基础上,引入了一个教师网络,教师网络学习一个基于未来数据的策略,并且用于训练学生网络。本专栏前面有讲。 https://www.aaai.org/AAAI21Papers/AAAI-3650.FangY.pdf

  • 【Vyetrenko S, Xu S. Risk-sensitive compact decision trees for autonomous execution in presence of simulated market response[J]. arXiv preprint arXiv:1906.02312, 2019.】ICML-19 的文章。构造了一个可以反映市价单市场冲击的模拟器;使用 tabular Q-learning 来学习基于决策树的模型;使用特征选择的方法来筛选特征。通过以上方式,能够学习到一个模型帮助决策什么时候应该下市价单、什么时候应该下限价单。 https://arxiv.org/pdf/1906.02312.pdf

  • 【Akbarzadeh N, Tekin C, van der Schaar M. Online learning in limit order book trade execution[J]. IEEE Transactions on Signal Processing, 2018, 66(17): 4626-4641.】从 online learning 的视角来解决这个问题,使用 DP 类的方法,分析 regret 。 http://repository.bilkent.edu.tr/bitstream/handle/11693/50289/Bilkent-research-paper.pdf?sequence=1

  • 【Wei H, Wang Y, Mangu L, et al. Model-based reinforcement learning for predictions and control for limit order books[J]. arXiv preprint arXiv:1910.03743, 2019.】专栏刚刚讲了的一篇文章,使用 model-based 类的强化学习算法,直接学习一个世界模型,然后让强化学习策略通过和世界模型的交互进行学习。 https://arxiv.org/pdf/1910.03743.pdf

  • 【Karpe M, Fang J, Ma Z, et al. Multi-agent reinforcement learning in a realistic limit order book market simulation[J]. arXiv preprint arXiv:2006.05574, 2020.】这里的多智能体似乎适用于结合历史数据生成其他市场参与者的动作,而最优策略的学习仍然是使用单智能体 DDQN 方法来做。他们开源了一个考虑多智能体的模拟环境 ABIDES。 https://arxiv.org/pdf/2006.05574.pdf

  • 【Schnaubelt M. Deep reinforcement learning for the optimal placement of cryptocurrency limit orders[J]. European Journal of Operational Research, 2022, 296(3): 993-1006.】研究数字货币上如何下限价单。对比了 PPO 和 DDQN,发现 PPO 更好。探索出了一些重要的因子,比如 current liquidity cost,queue imbalance 等。 https://www.econstor.eu/bitstream/10419/216206/1/1696077540.pdf

  • 强化学习 + 交易执行 (Thesis)

  • 【Hu R. Optimal Order Execution using Stochastic Control and Reinforcement Learning[J]. 2016.】KTH (瑞典)工程学院硕士论文。算法直接是基于价值函数的动态规划。不过提供了比较详细的模拟环境和算法伪代码。 https://www.diva-portal.org/smash/get/diva2:963057/FULLTEXT01.pdf

  • 【Rockwell B. Optimal Order Execution with Deep Reinforcement Learning[J]. 2019.】加拿大蒙特利尔高等商学院硕士论文。使用 TD3 和 DDPG 算法,不过实验是基于人工生成的数据的(skew-normal Brownian motion)。 https://biblos.hec.ca/biblio/memoires/m2019a628776.pdf

  • 【Reiter M B. An Application of Deep Reinforcement Learning for Order Execution[D]. School of Engineering Science, Osaka University, 2020.】多伦多大学本科毕业论文。在使用 A3C 算法的基础上,考虑了使用教师学生网络的方式进行迁移学习,并且考虑了短期市场冲击。 https://mbreiter.github.io/doc/thesis.pdf

  • 强化学习 + 风险偏好

  • Robust Risk-Sensitive Reinforcement Learning Agents for Trading Markets

  • Deep equal risk pricing of financial derivatives with non-translation invariant risk measures

  • 强化学习 + 做市策略

  • Optimal Market Making by Reinforcement Learning

  • Optimizing Market Making using Multi-Agent Reinforcement Learning

  • Deep Reinforcement Learning for Market Making

  • Deep Recurrent Q-Networks for Market Making

  • Robust Market Making via Adversarial Reinforcement Learning

  • Market making via reinforcement learning

  • 强化学习 + 资产组合

  • Deep Stock Trading: A Hierarchical Reinforcement Learning Framework for Portfolio Optimization and Order Execution

  • Robo-Advising: Enhancing Investment with Inverse Optimization and Deep Reinforcement Learning

  • Large Scale Continuous-Time Mean-Variance Portfolio Allocation via Reinforcement Learning




如何建立自己的算法交易
Model-based reinforcement learning for predictions and control for limit order books[J]. arXiv preprint arXiv:1910.03743, 2019.】专栏刚刚讲了的一篇文章,使用 model-based 类的强化学习算法,直接学习一个世界模型,然后让强化学习策略通过和世界模型的交互进行学习。 https:\/\/arxiv.org\/pdf\/1910.03743.pdf 【...

算法交易是什么意思?
算法交易是指基于电脑程序建立的一种自动化的交易方式。在这种交易方式下,交易者把交易策略编程成算法,然后让电脑根据这些算法自动地执行交易行为。这种交易方式通常采用先进的数据分析和人工智能技术来构建算法模型,以便快速地识别交易机会并实现高效的交易。算法交易的优点在于它能够降低人为错误的风险。由于...

你的人生算法是怎样的?
人生算法由两大模块构成,分别是A计划之“九段心法”和B计划之“十八关挑战”。利用A计划,通过大脑升级,建立内在的确定性,形成我们的人生算法。为我们搭建了一个可以循序渐进、逐步习得的思考和行动框架。利用B计划,我们将逐一破解18个人生难题,检验我们的人生算法,应对外在的不确定性。任何一个人,...

股票怎么建立自己的交易系统?
方法\/步骤:\\x0d\\x0a1、自选股\\x0d\\x0a应该建立自己的自选股股票池,动态管理、持续跟踪自选股,时机到来时可买入。自选股票的选股逻辑: 热点题材股、成长股、困境逆转股、低估股、资产突变重组股、套利股等。\\x0d\\x0a2、组合原则:适当分散\\x0d\\x0a当出现买点时,应利用组合的方式进行买入...

人工智能算法是建立在什么基础
人工智能算法是建立在数学、计算机科学、数据以及人类知识的基础之上的。数学为人工智能算法提供了理论和工具支撑,是AI的基石。线性代数、概率论与数理统计、优化算法等数学分支在人工智能中发挥着重要作用。例如,线性代数中的矩阵运算是机器学习算法中处理数据的关键;概率图模型则利用概率论来表示和推理不...

如何做算法研究
“人工智能研究人员最大的惊喜是,他们必须建立一个系统,在缺乏证据的基础上得出结论”所以,学习算法最重要是理解:要理解何为算法,何为人工智能!第一步是认识到人的思维模式是不科学的。这是进化的结果,人类擅长于在几乎短时间内找到问题的快速和有效的解决方案。几乎我们每天做的每件事都是这样做...

新手如何学习编程?
学编程入门建议:1.学编程要从根本出发,从理论上来说,需要广泛的阅读。了解算法的博大精深和计算机的基本理论。2.从实践上来说,需要有广泛的练习,练习的广泛在于练习不同的内容。然后就是创新精神和数学思维能力,这些都是需要培养的。基础要打好学编程要具备一定的基础。3.逻辑思维能力的培养、学...

采取哪些措施使算理与算法有效结合
算理就是理论基础。。。相当于分析过程。。而算法就是你从分析中找到的解决问题的方法,具体的解决问题的步骤。

一无所有大龄剩女该怎么办?
首先需要明确的是,大龄剩女不应该被贬低,因为每个人都有自己独特的人生经历和价值。即使是一无所有,我们可以从以下几个方面来提高自己的生活和职业发展。一. 提高自己的技能和知识水平。可以通过自学、参加培训班、报考各种证书等方式来提高自己的技能和知识水平,从而提高职业竞争力,寻找更好的工作机会...

计算机编程入门
详情请查看视频回答

吉木乃县17332137860: 如何建立自己的算法交易 -
丹肿忆辛: 在股票市场中交易过两、三年的人,几乎都有一套自己的交易方法. 虽然你有方法但如果还没有形成交易系统,那也先别着急去勉强建立,因交易系统是自然形成的.并不可人为刻意能建起来的.就好比计划经济与市场经济不断的适应市场的变...

吉木乃县17332137860: 如何建立自己的算法交易事业 -
丹肿忆辛: 《量化交易:如何建立自己的算法交易事业/“十二五”国家重点图书出版规划项目》绝不是一本量化交易技术或量化交易术语的百科全书,也不是专门介绍一些特殊的盈利策略(尽管你可以将书中所举例的少数策略进一步完善以获得更高的收益...

吉木乃县17332137860: 如何用r语言开发自己的基于算法的交易系统 -
丹肿忆辛: 算法交易——国际金融市场新趋势国泰君安期货吴泱 何笑凡 宋潇 编译在进行电子交易的金融市场里,算法交易(Algorithmic Trading)是通过计算机程序来下交易订单,即利用计算机算法决定交易下单的时机、价格乃至最终下单的数量与笔数等.

吉木乃县17332137860: 如何建立一套适合自己的高胜算交易系统 -
丹肿忆辛: 在股票市场中交易过两、三年的人,几乎都有一套自己的交易方法.虽然你有方法但如果还没有形成交易系统,那也先别着急去勉强建立,因交易系统是自然形成的.并不可人为刻意能建起来的.就好比计划经济与市场经济不断的适应市场的变化,时间长了,

吉木乃县17332137860: 如何建立属于自己的交易系统 -
丹肿忆辛: 如何建立属于你自己的交易系统?最简单实用、最符合自己个人情况的交易系统,才是最好的交易系统.如果你对基本面分析有研究,即通过金融、宏观经济、政治等方面因素,找到价格波动的原因,对价格进行预测,那么你可以使用以基本面分析为基础的交易策略.你可以对公布的重要经济数据或重要经济调控手段或消息进行市场反应的研究,以此做出交易决定.或者你对技术分析比较有心得,那么就基于你熟悉的技术分析手段,做出交易判断.可使用价格变动规律、图形形态,或使用指针、参数以及各种技术分析技巧.

吉木乃县17332137860: 如何建立一套属于自己的交易系统 -
丹肿忆辛: 这个问题的关键其实在后半部分——自己的交易系统.如果只想要一个交易系统,不难,网上书上都公布了一些免费的不错的甚至大名丁丁的,比如海龟系统,20日均线系统,10-20双均线系统,5-20双均线系统,三重滤网系统等等.它们适合...

吉木乃县17332137860: 如何建立一个完整的交易模型 -
丹肿忆辛: 一、市场定义 也就是青泽所说的市场当下是什么状态,我用布林线举例.1 结构内——也就是你需要的那种市场,比如市场震荡以后,日线破布林边线,就像最近下跌的这波焦炭一样,你可以不知道布林线是什么,但是从逻辑上来说,你很清楚震荡以后只要出现趋势,必然会突破布林边线.2 结构外——你不参与的市场状态,也就是避开震荡的部分.3 临界点——可能会出趋势的时候,这个时候仓位要轻.什么叫可能,就像日线破布林中线的时候,因为如果要出趋势总要先经过中线才到边线吧. 二、进场部分1 我们把信号可以分成突破、跟随、回撤,比如突破可以是突破昨天,也可以是突破最近的周线,也可以是突破均线.这些信号怎么进场,怎么过滤,怎么加仓,优先什么都要考虑好.

吉木乃县17332137860: 股票怎么建立自己的交易系统? -
丹肿忆辛: 在交易系统构建方面,先需要有交易思路和策略,其后才是一整套关于开平仓、头寸设置和风险管理的综合,如果交易策略不符合行情演绎的基本哲学,那么是形成不了交易系统的. 交易策略构建源自于对趋势或者震荡的认知,这其中最重要的...

吉木乃县17332137860: 如何建立一套高胜算的个人交易系统 -
丹肿忆辛: 首先你要有大量稳定赚钱的交易记录.然后从这里面找到类似的交易,并尝试系统化.系统化之后用模拟数据跑一跑,看看胜率如何,对系统做一些修正.如果都还可以,小仓位实盘跑一跑,跑个1年实盘稳定盈利回撤小,就差不多了.

吉木乃县17332137860: 如何建立自己的交易系统与盈利模式 -
丹肿忆辛: 交易高手的交易系统是涵盖了理念,到策略,以及具体的操作技巧要点,心态控制,资金管理等多个组成部分的,并且经过实践证明成功率较高的一种适合自己的盈利模式,而不是软件. 打个比方,比如 自己的交易系统,首先会考虑在上升,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网