精华内容
下载资源
问答
  • 一种altcoin加密货币高频交易算法 依存关系 python3-确保运行python 3(在〜/ .bashrc中写alias python=python3 (如果别名不存在则创建.bashrc)在命令行中以python file.py运行 请求sudo pip3 install requests -...
  • 数学建模论文高频交易算法.doc 2012年东华大学数学建模竞赛论文赛题编号(A)高频交易算法设计参赛队号DHUMCM2012148参赛队员贾硕果(信息与科学技术学院,自动化1002,100901216)徐美琪(信息与科学技术学院,自动化...

    41528d3028836879cd698677c3999917.gif数学建模论文高频交易算法.doc

    2012年东华大学数学建模竞赛论文赛题编号(A)高频交易算法设计参赛队号DHUMCM2012148参赛队员贾硕果(信息与科学技术学院,自动化1002,100901216)徐美琪(信息与科学技术学院,自动化1002,100901205)魏子涵(信息与科学技术学院,自动化1003,100901120)2012年5月21日摘要高频交易算法利用计算机在上千个股票,上万个期权,每时每刻的交易数据中,筛选出合适的交易对象,立即交易,短时间后有利可图即卖出。如反向,也可即时止损。本文以稳定盈利为目标,以移动平均值函数为基础,运用MATLAB设计程序算法,并调用相关的函数扫描算法,设计一个高频交易算法,利用扫描程序与变化图像获取最大利润值以及此时的最优交易方式。通过所提供数据中的一部分作为模拟,另一部分作为验证,由此获得最为一般性的最大盈利方式,选择最优的量化投资策略。实现高频交易获得的累加利润。一.问题分析高频交易算法是利用计算机实现短期的量化投资策略,通常用于股票,期货,和一些电子交易,需要设计一个适应性很强的交易算法。由算法的技术指标要求,首先想到MOVINGAVERAGE的一系列函数,由本例算法要求可知,应选用MOVING(FINANCE)函数,设计基本的函数模型,再由所提供的数据通过最优化模型扫描得出最优参数,由此实现高频交易算法的设计与实际一般性的运用。二符号变量说明与函数定义LEAD提前指标LAG滞后指标MOVAVG移动平均指标FREQUENCY交易频率SHARPERATIO是用以衡量每单位风险所能换得的平均报酬率FINALRETURN最终结算率三.模型的建立与求解1基本模型假设将所提供的数据分为两部分,80作为建模数据,20作为验证数据。利用移动平均指标,先设定LEAD为5,LAG为20,做最原始的测试,得到如下图形由图可知当LEAD线高于LAG线时,收盘价CLOSE处于上升阶段,反之则下降。由此可设定盈利信号S1则买入,1则卖出,R为每次的盈亏值(大于0盈利,小于0亏损),求和即为总利润。由上述策略,当由1变1时能够带来利润当LEAD与LAG分别取5,20;1,20时,SHARPERRATIO分别为11与128,如下图所示2参数扫描确定依次确定提前指标与滞后指标。(1)先设定提前指标为1,将滞后指标设为M,从1200取值,利用FOR循环获得最大SHARPERRATIO。如下图可知,当LEAD为1,LAG为2是可得最大SHARPERRATIO为313,最后结算FINALRETURN为648(比率与所用数据量有关)。(2)利用穷举法对LEAD与LAG同时进行扫描,将结果可视化得下图横轴为LEAD,纵轴为LAG,高度即为SHARPERRATIO,可直观的得出各种组合的效果。再用数据分析取最大值方法求取最优组合即为1和2。3模型一般性测试将所建立的模型去测试另一部分数据,结果如下可见,SHARPERRATIO和FINALRETURN依然保持较高数值,模型具有很好的一般性。4模型完善(1)对于市场交易的高频率与大数量而言,交易的成本(买进卖出的差值)是一个非常重要的不可忽视的因素。在以上模型基础上再加上对成本COST的定义与计算(利用LEADLAGFUN函数对数据进行更系统的扫描)结果如下与先前模型的结果一致,也同样证明了模型良好的一般性。(2)对于高频交易,由于其高频特性,应以每一分钟的数据进行扫描统计(同样以80数据建模,20数据检测),由此再引入频率这一参数,则在扫描中应有3个变量(LEAD,LAG,频率F),扫描范围应适当增加,所得结果如下建模数据结果检测结果则可得交易频率为27MIN,,SHARPERRATIO依旧保持较高数值。综上模型的建立,最终策略为提前指标取1,滞后指标取2,交易频率取27MIN。四.模型的优化与改进对于模型中所涉及的计算时间问题,由于高频交易在很短的时间(可以微秒计算)完成,对算法的计算时间应有很苛刻的计算速度要求。因此可引入MATLAB中并行计算的方法,即运用后台开启多个MATLAB同时运行,并列同时计算相同的程序代码,可成倍的缩短计算时间,但对计算机的硬件要求较高(多核计算机或计算机集群)。参考文献【1】【美】艾琳奥尔德里奇著王仰琪等译高频交易机械工业出版社2011【2】魏奋运用MATLAB开发高频交易算法HTTP//WWWMATHWORKSCN2012/5/18【3】王晓东算法设计与分析清华大学出版社2003

    展开全文
  • 高频交易算法研发心得—最稳妥的低风险交易策略 注意:本文章的算法策略适用于可借资源的市场(数字币、贵金属),不适用于股票   很多人在进行交易的时候,都喜欢一直盯着大盘看,为什么呢?原因很简单,大家都...

    高频交易算法研发心得—最稳妥的低风险交易策略

    注意:本文章的算法策略适用于可借资源的市场(数字币、贵金属),不适用于股票

     

    很多人在进行交易的时候,都喜欢一直盯着大盘看,为什么呢?原因很简单,大家都在关心着当前的行情有没有大涨大落,正常情况下(用货币来买入交易物)没有人会害怕行情大涨,但是一旦出现了极端情况,行情一路大跌,很多人会血压升高,满面通红。

    咱们书归正文,很多人都在寻找能提前预测大幅下跌的算法,但是真的很难。那么有没有一种可以不出现大起大落的行情,可以稳稳当当挣钱呢?答案是有的,这次我们就来聊聊“交易物对冲策略”(这个方法根本算不上什么算法)。

    1. 前提条件

    交易物对冲算法并不是在所有的交易市场都适用,其条件如下:

    • 只适用于提供融资功能的交易市场(如数字币,贵金属等),用户可以借入交易物(不是货币)。
    • 不适用于股票市场!
    • 交易市场必须提供两种以上可以交易物,比如在一个数字币市场中,可以交易比特币和莱特币;一个贵金属交易所,可以交易白银和铜。
    • 两种交易物之间的单价差要在50%以上。
    • 最好能自动化完成交易,手动交易较为繁琐。

    2. 策略描述

    对于金融交易的行家来讲,对冲不是什么新鲜玩意儿,比如,很多网站都提供多不同比特币交易市场的报价,用户可以在一个市场低价买入,另一个市场高价卖出,这就是所谓的“搬砖”。这种市场间的“对冲”受到转账费用、网络延时等问题的影响,往往利润比较单薄。我们这里说的“交易物对冲”指的是在同一个市场中,不同种交易物之间的对冲。下面我们以比特币(BTC)和以太坊币(ETH)为例,进行策略说明,该策略的流程图如下:

     

     

     

     

    • 第一步:融资

    前提条件中,我们说过,两种交易物的单价减值需要在50%以上,我们选取的BTC和ETH正好满足这个条件。

    这一步中的融资,指的是为单价较低的交易物进行借物操作(本例中是为ETH进行借币),不同的市场可以借的数量不一样,有的市场是5倍,有的是3倍。

    • 第二步:绘制对冲行情线

    注意,此步骤需要软件辅助,如果不怕麻烦,也可以使用Excel手动计算。

    所谓的“对冲行情线”就是指每分钟“高单价交易物”的价格与“低单价交易物”的价格的比例曲线。同时,为了能够进行量化交易,需要添加该曲线的SMA(10)和SMA(120)曲线。其伪码如下:

    //获取BTC K线
    
                                var klinebtc = GetCNBTC("btc", "1min", 1000);
    
                               
    
                                //获取ETH K线
    
                                var klineltc = CNBTC("eth", "1min", 1000);
    
                                List<TimeValuePair> bls = new List<TimeValuePair>();
    
                                for (int i = 0; i < klinebtc.Count; i++)
    
                                {
    
                                    //计算每分钟中间价的比例
    
                                    bls.Add(new TimeValuePair() { DateTime = klinebtc[i].Time, Value = klinebtc[i].Middle / klineltc[i].Middle });
    
                                }
    
                               
    
                                //计算短周期SMA
    
                                var smabl10 = GetSMALine(bls, 10);
    
                                //计算长周期SMA
    
                                var smabl120 = GetSMALine(bls, 120);

     

    经过前面的计算,我们可以得到如下曲线:

     

     

    • 第三步:交易

    当短周期均线向上穿越长周期均线时:

    1>     卖出所有借的交易物(本文ETH)。

    2>     按卖出的总钱数(注意,不是你所有的钱),买入另一种高单价交易物(本文BTC)。

    当长周期均线向下穿越短周期均线时:

    1>     卖出所有的高单价交易物(本文BTC)。

    2>     你借了多少交易物(本文ETH),就买入多少,注意一定不要买多了,也不能买少了!!!!

    • 第四步:看看你挣了多少钱

    请看官自行计算

    3. “交易物对冲”策略的原理论证

    下面我们从2方面来对该策略进行论证:

    • 行情稳定性

    本质上来讲,行情是否稳定,直接决定了您的资金是否安全,当然,波动越大的市场,潜在的利润也越大(换句不好听的话就是风险也越大)。经常看大盘的朋友们不难发现,无论是比特币,还是股票,如果整体行情大涨,那么大多数的数字币或单股都会跟着大涨,大跌时也亦然。

    这就好比美元对黄金大跌,那么人民币一定会受影响大跌一番。其实道理很简单,每一个市场背后都存在着大量的资金进行支撑。一旦某一个币种出现大幅度下跌,大财团的操盘手们就会马上开始行动,进行资金转移。因此,我们会受到大财团庇护,不同交易物价格比例会相对稳定。以2017年初的比特币大波动行情为例,就可以对此进行印证,如下所示:

     

     

     

     

     

    如图不难看出,2017年1月5日基本上大多数的数字在同一时刻出现了大跌。

    • 交易物行情无关性

    看到上面的比特币行情,我相信大多弄比特币的朋友都会记忆由新的,行情突然之间下跌了快3000块钱,真是让人喘不上来气!

    但是如果应用了“交易物对冲策略”,看官们会发现,无论大盘涨到了三十三层天外天,还是,还下跌到了十八层地狱,都和你没有关系,因为,用一句话来描述该策略就是:

    “行情是多少钱,我不关心,我关心的是,卖了BTC,能不能换回比我借的ETH多!”。

    “交易物对冲策略”本质上是将交易物的价格涨跌转移给了市场提供商(因为你的币是向市场借的),你只要保证借了多少还多少就行了。以上图中的大跌行情为例(较为极端的行情),我们可以计算一下:

    时机

    BTC价格

    ETH价格

    比例

    2017-1-5 15:00

    8848

    87.89

    100.6713

    2017-1-7 12:30

    5812

    67.03

    86.707

    跌幅

    34%

    24%

    14%

    2017-1-18 11:36

    6170

    70.56

    87

    上述表格可以表明,使用对冲比例行情时,跌幅是最小的。另外,我们也可以从上表中发现以下几个特点:

    1>     要涨,大家一起涨,反之亦然。

    2>     单价高的交易物涨的快,下跌的也快。

    4.数据说明

     

    如上图所示的一次交易过程,买入点为84,卖出点为92,那么这两个数据意味着什么呢?

    首先,您在买入时,一个比特币可以兑换84个ETH。

    到了卖出点时,您可以用一个比特币兑换92个ETH。

    这样,您就挣了8个ETH

    5. 总结

    交易物对冲策略的优点就是行情稳定,不会出现特别大的波动,但是利润相对来说比较少。

    笔者将算法已经编译成APK包(点击下载),大家可以参考软件中绘制的曲线,自行买卖。该软件的功能如下:

    1>     软件中数据来源自中国比特币

    2>     软件提供BTC,LTC,ETH,ETC的对冲行情,如下图所示:

     

     

    作者:科学家

                                                        Email:warensoft@163.com

                                                        微信:43175692

     

    展开全文
  • 2012年东华大学数学建模竞赛论文赛题编号(高频交易算法设计参赛队号:参赛队员:2012年5月21日摘要高频交易算法利用计算机在上千个股票,上万个期权,每时每刻的交易数据中,筛选出合适的交易对象,立即交易,短时间...

    2012年东华大学数学建模竞赛论文

    赛题编号(

    高频交易算法设计

    参赛队号:

    参赛队员:

    2012年5月21日

    摘要

    高频交易算法利用计算机在上千个股票,上万个期权,每时每刻的交易数据中,筛选出合适的交易对象,立即交易,短时间后有利可图即卖出。如反向,也可即时止损。

    本文以稳定盈利为目标,以移动平均值函数为基础,运用matlab设计程序算法,并调用相关的函数扫描算法,设计一个高频交易算法,利用扫描程序与变化图像获取最大利润值以及此时的最优交易方式。通过所提供数据中的一部分作为模拟,另一部分作为验证,由此获得最为一般性的最大盈利方式,选择最优的量化投资策略。实现高频交易获得的累加利润。

    一. 问题分析

    高频交易算法是利用计算机实现短期的量化投资策略,通常用于股票,期货,和一些电子交易,需要设计一个适应性很强的交易算法。由算法的技术指标要求,首先想到moving average的一系列函数,由本例算法要求可知,应选用moving(finance)函数,设计基本的函数模型,再由所提供的数据通过最优化模型扫描得出最优参数,由此实现高频交易算法的设计与实际一般性的运用。

    二 .符号变量说明与函数定义

    Lead:提前指标

    lag:滞后指标

    Movavg: 移动平均指标

    Frequency:交易频率

    Sharpe ratio:是用以衡量每单位风险所能换得的平均报酬率

    Final return:最终结算率

    三. 模型的建立与求解

    1. 基本模型假设:将所提供的数据分为两部分,80%作为建模

    数据,20%作为验证数据。利用移动平均指标,先设定lead为5,lag

    为20,做最原始的测试,得到如下图形:

    由图可知:当lead线高于lag线时,收盘价close处于上升阶段,反之则下降。由此可设定盈利信号s:1则买入,-1则卖出,r为每次的盈亏值(大于0盈利,小于0亏损),求和即为总利润。

    由上述策略,当由1变-1时能够带来利润

    当lead与lag分别取5,20;1,20时,sharper ratio分别为1.1与1.28,如下图所示:

    2. 参数扫描确定:

    依次确定提前指标与滞后指标。(1)先设定提前指标为1,将滞后指标设为m,从1——200取值,利用for循环

    当lead与lag分别取5,20;1,20时,sharper ratio分别为1.1与1.28,

    如下图所示:

    2. 参数扫描确定:

    依次确定提前指标与滞后指标。(1)先设定提前指标为1,将滞后指

    标设为m,从1——200取值,利用for循环

    获得最大sharper ratio。如下图:

    可知,当lead为1,lag为2是可得最大sharper ratio为3.13,最后结

    算final return为6.48(比率与所用数据量有关)。(2).利用穷举法对lead

    与lag同时进行扫描,将结果可视化得下图:

    横轴为lead,纵轴为lag,高度即为sharper ratio,可直观的得出各种组

    合的效果。再用数据分析取最大值方法求取最优组合即为1和2。

    3.模型一般性测试:

    将所建立的模型去测试另一部分数据,结果如下:

    可见,sharper ratio和final return依然保持较高数值,模型具有很好的一般性。

    4.模型完善:

    (1).对于市场交易的高频率与大数量而言,交易的成本(买进卖出的差值)是一个非常重要的不可忽视的因素。在以上模型基础上再加上对成本cost的定义与计算(利用leadlagfun函数对数据进行更系统的扫描)结果如下:

    与先前模型的结果一致,也同样证明了模型良好的一般性。

    (2).对于高频交易,由于其高频特性,应以每一分钟的数据进行扫描

    统计(同样以80%数据建模,20%数据检测),由此再引入频率这一参数,则在扫

    描中应有3个变量(lead,lag,频率f),扫描范围应适当增加,所得结果如下:

    建模数据结果

    检测结果

    则可得交易频率为27min,,sharper ratio依旧保持较高数值。

    综上模型的建立,最终策略为:提前指标取1,滞后指标取2,交易频率取27min。

    四. 模型的优化与改进

    对于模型中所涉及的计算时间问题,由于高频交易在很短的时间(可以微秒

    计算)完成,对算法的计算时间应有很苛刻的计算速度要求。因此可引入matlab

    中并行计算的方法,即运用后台开启多个matlab同时运行,并列同时计算相同

    的程序代码,可成倍的缩短计算时间,但对计算机的硬件要求较高(多核计算机

    或计算机集群)。

    参考文献

    【1】 【美】艾琳·奥尔德里奇 著 王仰琪 等 译 高频交易 机械工业

    出版社 2011

    【2】 魏奋 运用MATLAB开发高频交易算法 http://www.mathworks.cn

    2012/5/18

    【3】 王晓东 算法设计与分析 清华大学出版社 2003

    展开全文
  • 算法交易&高频交易

    2020-03-24 14:18:34
    产生背景 这程序化交易、自动化订单生成器和自动化订单路由系统主要被卖方公司用于执行下列业务:委托/自营交易、代理...波动率在高频交易中扮演着极其重要的角色。 算法交易 算法交易的组成: 1)展现实时数...

    产生背景

    这程序化交易、自动化订单生成器和自动化订单路由系统主要被卖方公司用于执行下列业务:委托/自营交易、代理机构/客户的设施以及跨多资产类别。交易策略,包括指数替换、风险修正和期转现的清算等。当期货市场相对于现货市场的定价过高的时候,买方程序出现。当现货市场相对于期货市场的定价过高的时候,卖方程序出现。波动率在高频交易中扮演着极其重要的角色。

    算法交易

    算法交易的组成:

    1)展现实时数据和历史数据

    2)可用于做相关性分析、甄别交易机会、决定发布的最优时机、根据基准(VWAP、TWAP等)衡量交易执行

    3)也可用于订单管理与处理

    4)连接流动性池:交易所、电子通讯网络、交易商间经纪人等

    5)整合内部系统:交易、订单管理、风险管理以及合规后台办公室

    智能订单路由选择

    交易量加权平均价格

    时间加权平均价格

    交易量比率

    PEG

    高频交易

     

    高频交易 (HFT) 是执行计算机操作的交易策略,其特点是极短的持仓时间。专业交易员应用—— 而不是散户!交易程序在高速计算机上运行,分析市场数据、使用算法发现可能仅有几分之一秒至几小时不等的交易机会。高频交易兴起于1999年左右;在21世纪初,高频交易占股票交易的不到10%。高频交易在美国占股票交易的70%,并且在欧亚等地区快速流行。当今,高频交易估计可占到全美股票交易的56%以上、欧洲股票交易的38%以上。但是,高频交易是一块拥挤的领域,大多数的“低果(容易的东西)”已经被摘走了!大部分高频交易是低于一美分的交易所交易基金(ETF) 和客户订单流的频密交易。

     

    高频交易一般要求低延迟的设定。目的是抓住套利的机会或寻找/挖掘估值过低/过高的资产,入市时机是关键(也就是速度)。具有超低延迟直接市场准入(“ULLDMA”)的高频交易应用程序越来越盛行,同时允许短时间内的非理性移动 (例如,2010年5月的闪电崩盘)。

     

    高频交易 – 技术要求和挑战:

     

    1)需要极低延迟、高性能的硬件、软件和网络连接

    2)需要设计和构建应用程序的技能组合

    3)数据中心托管—— 在托管地点管理服务

    4)托管场所要求和限制

    5)系统和网络的监控、工具、过程和调试

    6)资本预算要求

    7)成本/收益分析

     

    影响算法交易和高频交易的因素

    交易速度和交易量:

    1)订单流和程序化交易的交易量的增长

    2)“谈话交易”比率

    3)2010年曾撼动美国市场的“闪电崩盘”

     

    技术瓶颈:

    1)系统处理/容量规划挑战

    2)硬件、软件应用程序、网络和撮合引擎的延迟

    3)80-20法则

     

    智能路径选择的演变:

    独立软件开发商(ISV)前端交易和订单路径选择系统

     

    来源:芝加哥投资学院

    推荐阅读:

    1.一个量化策略师的自白(好文强烈推荐)

    2.市面上经典的量化交易策略都在这里了!(源码)

    3.期货/股票数据大全查询(历史/实时/Tick/财务等)

    4.干货| 量化金融经典理论、重要模型、发展简史大全

    5.干货 | 量化选股策略模型大全

    6.高频交易四大派系大揭

     

    展开全文
  • Gamma Ray是使用C ++编写的,针对加密货币市场的高频做市商交易机器人。 它能够在100微秒内持续更新制造商订单。 该程序旨在成为开发自己的做市商算法的起点,并且它附带3种现有策略供您入门: 给定最小价差约束,...
  • 高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用 注:WAVT指标由Warensoft(王宇)原创。 前面聊了一系列的常见应用指标,包括短线、长线的指标,并且也无耐的指出每种指标的问题。当然每写...
  • 高频交易的四种经典算法

    千次阅读 2020-05-21 11:01:21
    近期自己我们公布YingTou ATS高频对冲套利系统以来,很多朋友对高频交易模型产生了极大的兴趣,今天我们来给大家分享几套经典的高频交易算法。 (1)“冰山(iceberging)”:其特点在于将大笔订单拆分,把那些单笔...
  • 在默认参数的情况下,MACD值出现了穿越了0值时,不能100%的做为买入、卖出条件,但是可以成为上一章节所提的MA线追逐算法降低交易次数的重要参考,情况如下图所示: 由于MACD值是由均值差值计算所得,因此,即使K线...
  • 基于深度学习算法高频交易策略及其盈利能力.pdf
  • 在央行发布的《中国金融稳定报告(2016)》中,...那么什么是程序化交易、算法交易、量化投资、高频交易、 统计套利,我们一文帮你解释清楚。 1. 程序化交易:program trading很简单的字面意思,意味着你利用程序(pr...
  • 高频交易算法研发心得--RSI指标及应用 前面文章中我们提到了MA均线(包括EMA,SMA)、MACD以及SAR指标,这三类指标存在一个共同特点,即:从固定周期的价格作为判读的指导思想,并将价格进行平滑处理,然后得到可...
  • 今天来探讨一下常见的均线算法的应用。在各种交易软件中,我们常常可以见到MA指标,EMA指标以及SMA指标。 首先说明SMA的二义性,如果您在百度直接搜索SMA指标,指的是带加权的指数平均值;然而,再去查询“简单移动...
  • 最近一直在以比特币为基础研究高频交易算法以及策略(同时也在仔细研读《封神演义》小说)。在此期间,在网上学习了很多指标相关的知识,也看了很多“牛人”所谓的“股票预测大法”,也颇感可笑。通过无数次的试验...
  • 基于深度学习算法高频交易策略及其盈利能力_孙达昌.pdf
  • 基于随机逼近理论,我们在限价单中提出了一个做市商的优化框架。 在最佳清算策略的背景下,我们考虑了Lavelelle,... 正如将要讨论的那样,我们的方法的原理可以扩展到除做市商以外的更广泛的算法交易战术问题类别。
  • 解释高频交易中的主流算法高频交易系统开发的注意事项
  • 高频交易是自动化交易的一种形式,以速度见长,它利用复杂的计算机技术和系统,以毫秒级的速度执行交易,且日内短暂持仓。其中,流动性交易策略、市场微观结构交易策略、事件交易策略和统计套利策略在国外成熟市场上...
  • 高频交易的方式对TWAP算法进行优化。 以下内容主要基于执行算法的讨论。 什么是TWAP算法(时间加权平均价格)? TWAP交易时间加权平均价格Time Weighted Average Price模型是把一个母单的数量平均地分配到一个...
  • 高频交易,你听到这个名字有多少年了,但是你翻遍互联网,找到过真实在用的高频交易策略吗?不管别人如何, 我决定把自己使用的tick级高频交易策略分享出来。第一章:期货日内高频:普通均值回归策略1. 课程准备与...
  • http://www.blublu.me/news?min_id=7639
  • 算法高频交易中很重要 计算机遵循预定义指令集的算法进行交易 涉及以极高的速度买卖股票等证券,交易者可能只持有他们购买的股票几分之一秒,然后再次卖出。 通过排除人类情绪使交易更加系统化,以人类交易者无法...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,810
精华内容 2,324
关键字:

高频交易算法