石家庄怎么开发自己的期货程序化交易策略

石家庄怎么开发自己的期货程序化交易策略,第1张

一. 程序化的理解

程序化一般分为两类模型,一类是趋势模型,一类是震荡模型,如果你想两者结合起来就要看自己的本事了,我的建议是程序化需要不停的去完美,但千万不能追求完美,以下所说模型都是趋势模型;

程序化一种工具,帮助你积累财富的工具,却不是一种暴利的赚钱方式,程序化模型有好坏之分,程序化赚钱的前提是一个好的模型,程序赚钱的关键是坚持的执行,程序赚钱的精髓就是在确定最终使用模型之后,彻底的放弃你对金融市场的一切理解和交易技能.就像武侠小说里说的,想练成最上层的功夫,就应该先废掉所有的武功.

二.程序化模型的选择与辨别

如果有人告诉你他的程序化能在不长的时间内,让你的资金翻几番,那你要为他的言语或者他的程序打个折扣,但是如果对方又能拿出不错的图形或者非常漂亮的收盘测试结果放在你的面前,你又当如何说服自己是相信还是不相信?以下内容就是帮助你如何辨别好坏模型.

1. 测试时间:一个好的程序化必须经得起时间周期的测试,如果一个程序化,结果很漂亮,周期却只有一两个月,不可信;

2 . 使用资金:很多人贴出来的漂亮测试结果,使用资金常常是80%或者其它百分比,但这些都是不合理的选择,因为金融市场资金管理很重要,在行情好时候,资金使用越高,收益越大,行情不好时,资金使用越高亏损越大,但我们无法去判断接下来的行情会如何,所以,历史测试的结果使用百分比的开仓方式是不合理,这也就是为什么,有时候会出现,资金使用率为80%是,测试结果是亏损的,而且使用率为40%时又是赢利的.总而言之,资金使用时应该选择固定的手数进行测试,不管他的行情如何,永不加仓或减仓,来测试一个模型更为合理;

3、测试方式:开盘价和收盘价测试均有其不合理性,趋势模型一般以趋势逆转点为开仓信号,故较为准确的是:出现指令价位。

测试结果的分析:

a.指令总数:也就是信号数,过高,说明震荡行情过滤不好,过低,说明风险大;如何判断信号数合理呢?那就只有不同的模型在同样的周期下的一个对比了.还有一个最简单的方式就是将 指令总数/有效交易天数 以日内短线为例,一般一个有效交易日的平均信号数在2-5之间(此数据仅供参考);

b.利润率:总利润不用看,只看扣出最大利润的结果,必须为正,而且测试周期越长利润率应该越大,很多模型,测近期不错,测远期就不行,所以测试时应该尽量的去测能测到的最长周期.(当然因为行情关系也可能出现,长期比短期利润率低,但总体而言,周期越长利润率越高,才是好的模型的测试结果)

c.正确率:其它条件都完全一样的情况下,正确率越高自然越好,但也不用为了看到一个高正确率的模型而心动,也不用因为你自己模型的正确率低而担心,一般的正确率能在45%左右,就不错了,因为程序化的本来意义就是赚大亏小,在震荡的时候正确率自然会低;

d.最大亏损率:如果你是选择的固定手数,比如10手进行测试,你的最大亏损率最大应该不能超过10%,当然,如果你选择的测试手数多,最大亏损率可能有所提高.如果你选择的80%的资金使用率,可能亏损会更大,当然也会有亏损的不大的测试结果,这往往和你的测试周期中的行情的一定关系,所以不值得过于依赖;

e.空仓时间:以日短线为例,空仓时间不能太高,太高,必然会错过大行情,当然,这一项不是最重要的,如果你空仓时间长,利润也高,错过就错过吧,错过不是过错,没赚到也不存在亏损的风险;小结:测试结果分析不能只看某一个数据,因为结合起来一起分析:指令总数不能多也不能少,周期越长利润率应该越高,正确率45%以上就可以接受,最大亏损不能过大,空仓时间可以自行把握;

如果一个模型做到了以上几点是不是就算一个好的模型了呢,基本上可以算了,但最重要的是我们还需要结合信号图形(此点需要一定的程序化经验,并不一定看上去好的模型就是好,当然看上去好是前提,如果看上去都觉得一般了,那肯定是不行)来分析,此外,还要看到模型里是否有未来函数,如果是日内短线,信号就一定不能消失,每天的跳空缺口需要技术性的回补等等其它问题都是分析一个模型好坏的理由,但是,一个好的模型是不怕任何测试与分析的.

三.程序化交易的执行

这一点没什么好讲却又不得不讲,很多有多年经验的 *** 盘手,甚至一些国内的金融公司,常常会对程序化交易提出一定的质疑,我就遇到一个期货公司的老总,因为觉得程序化好,准备的资金,进行了程序化交易,首先我不知道他选择模型的依据是什么,号称只是因为人家是大公司,测试结果不错,(如果是我听到这样的话,肯定不会很快的就认定他们的模型,因为我也见过某些(不方便透露)所谓大公司的程序化交易模型的原码,说实在的,确实是**,理论基础都无法说服我,但做出来的图形要去迷惑一些想使用程序化的入门者是绰绰有余)结果这个老总使用该模型交易时,正好遇到一段时间的震荡行情,可能是亏了不少吧,然后决定放弃程序化交易.

这就是一个典型的程序化执行的例子,程序没有人性,我们在使用时就更不应该加入人性,如果你决定使用程序化就给自己一个时间期限(不管是真钱也好,模拟也好),时间不能太短,如果短也可以,必须在这段时间中,你要自己能分析出,是不是都能遇上基本上所有的行情,比如,测试三十天,遇到过十天的震荡,也遇到了好几天的大行情,以此来分析程序的好坏;绝不能因为几次的使用结果不好而去否认程序化,也不能因为几次的使用成功而完全信任,必须要有一定时间的观察与模拟,然后再到真钱的尝试,时间长短是小事,关键是是否经历过大部分的行情,从而选择一个最适合而不是最完美的模型进行自己的程序化交易;

一旦执行,你就应该忘记所有的金融市场的条条框框,你就是一个傻瓜执行者,聪明人在金融市场上不一定能生存,傻子在金融市场也不一定被淘汰.

最近调研了一些投资公司,发现一些人说自己做的是量化交易,却搞不清楚到底什么是量化交易。

我是个很爱学习的人,为了弄清楚什么事量化交易,特意查百度逛知乎,我是从这个问题开始的:

程序化交易是量化交易吗?

这里我先把几个概念总结一下:

程序化交易

或者自动化交易,是将策略交由计算机执行的交易模式。量化交易中,不少交易是通过计算机自动执行的,但两者不能划等号。

对冲交易

更多说的是一种交易理念,而非具体的策略。

量化交易

更多是基于数据和历史统计基础,制定的一些交易策略。哪怕不用计算机执行,但基于交易因素的数量变化引发的交易,都可以叫做量化交易。

而后,我在知乎上扒到一段文字,介绍了量化交易的策略研发方法,可以比较好的解答不同概念之间的关系,以及量化策略的进阶。作者将量化策略研发分成三个层次:

第一类:传统策略量化

很久以前,交易员们就开始做趋势策略、反转策略、剥头皮策略、做市策略等各种不同风格的策略,只不过那时是手工 *** 作,或者半自动化。随着市场发展技术成熟,量化交易把这些策略的研发和执行自动化了,从而提高了研发效率和水平、降低了交易成本,较大程度的排除了人的不稳定因素。

这类交易,可以说是利用技术来提高原有策略的研发和执行,并且交易频率和规模也有了变化,但本质上并不算崭新的策略类别,以前赚钱的策略也许能赚的多一些,亏钱的策略,量化也不能把他变成赚钱,这就是 【思路错了量化也救不了你】 。

目前国内多数量化交易都属于此类。

第二类:科学技术驱动策略

纯粹或很大程度上基于技术(technologies)差别的策略。这个类别也有一定历史,但真正变成一个庞大且引人注目的策略类别,则是在近10年计算机技术的飞速发展过程中产生的。常见的情形是,某机构因为采用的算法效率更高,计算机硬件更强大(超级计算机),产生了细微的速度和计算优势,从而在交易上抢得先机,并运用自动化交易频繁交易大量产品,用巨大的交易量产生稳定的收益。这类策略中IT技术和科学模型起了很关键的作用。这就是【 技术就是你的思路】 。

举个例子:

较早开始高频交易的Tradebot就是这类策略的典型运用者,在2002年就达到了每天一亿个订单,差不多在那个时候很多传统做市商被Tradebot和Getco这样的新型电子做市商挤出市场,后来Tradebot和Getco同样一路用技术碾压其它电子做市商竞争对手。

在2005年, Tradebot 剥离了BATS Global Markets,也就是现在美国第三大股票市场BATS。而1999年Tradebot刚成立时,工作室地点是美国农村Kansas City的一间小地下室,里面阴暗潮湿,只有5个交易员坐在电脑屏幕前监控交易,那时每台电脑上都配备了一套叫着“Tradebot”的软件。而Getco 对策略的运用更广,野心更大。2012年,也是老牌做市商的 Knight 因技术故障,向纽交所发送大量错误order,导致公司巨亏4.4亿美元,股价两个交易日暴跌七成,被Getco以18亿美元价格收购。

人们常对西蒙斯文艺复兴的大奖章基金长期持续的高回报印象深刻,而实际上不太为媒体所知的是 Tradebot 常年保持每天(而不是每月或每年)盈利,not even one single losing day,原因是文艺复兴有很多新基金要向外部投资者融资(赚钱的大奖章很早停止了外部融资,而实际新基金表现比大奖章差很多),需要做一定程度的IR,而Tradebot不对外部投资者开放,自己低调赚钱,这也是HFT很普遍的特点。如果不是市场几次出现大动荡,HFT被揪出来当替罪羊,媒体口诛笔伐,基本是没有多少人知道这个低调类别的存在。

这一类,国内已经有一小批类似的交易者进入,他们深入研究交易规则和市场结构,制定相应的高频策略,配合高效软件硬件,争取积少成多的盈利。

第三类:新型量化策略

这类策略则是得益于计算机技术的发展,而慢慢发展起来的策略类别。它不完全是基于执行的技术优势,更多是利用技术研发出新策略。例如统计套利,需要较多计算机计算资源进行数据挖掘、模式识别,这在以前仅仅靠人力是难以胜任的。IT技术的发展和成本的降低使得这些策略的研发得以可行。这就是 【技术产生新策略】 。

这一类目前国内还处于萌芽期。

【感谢知乎作者 Leon 】

拓展: 如何设计量化交易策略?

     程序化交易策略的应用领域十分广泛,几乎所有的交易策略中都可以找到其应用。国内比较常见的交易策略,大体可以分为五个方向:日内高频交易、趋势交易、套利交易、组合策略和其他策略。

      1、日内高频交易

      日内高频交易,顾名思义,就是在日内频繁地做T+0的交易,只要每次 *** 作的盈利高出手续费,就执行平仓。每一笔盈亏都不多,但是每天的交易次数可能会非常频繁,达到成百上千次,累积的预期年化预期收益情况就会非常可观。同时,由于每一笔的亏损都有限,因此风险非常低。以大豆期货举例来说,单边手续费按6元计算,日内平仓不收费,价格每波动1点是10元,那么只要价格上涨1点就可以赢利平仓,相应的下跌1点也需要立刻止损。

      日内高频交易的优点是风险小、盈利稳定,缺点是由于交易频繁而产生过高的手续费。

      2、趋势交易

      趋势交易根据交易的周期,可以分为日内的短趋势交易和隔夜的中长期趋势。我们主要介绍隔夜的趋势交易。趋势交易的一般使用技术分析作为判断的依据,常见的有均线系统,各种技术指标等。

      在使用技术分析进行判断的时候,往往会出现某个指标对特定的品种效果非常好,但对其他品种效果一般,甚至由于不适合导致亏损。因此对于不同的品种,或者同一品种的不同时期,可能需要使用不同的模型,或者调整模型的参数才能获得比较理想的回报。

      3、套利交易

      套利交易是一种低风险、预期年化预期收益稳定的 *** 作方式,是应用范围最广泛的程序化交易策略之一,国外大量的对冲基金都是用套利交易作为主要的交易方式。套利交易的种类多种多样,常见的有期现套利、跨期套利、跨品种套利和alpha套利等。

      根据交易的类型,套利的风险也是不同的。以期现套利来说,属于指数套利,当期货和现货指数之间的价差过大时建立头寸,从而赚取无风险的预期年化预期收益。其他的套 利方式属于非指数套利,两个或者多个品种的价差走势存在一定的不确定性,因此存在一定的风险。根据NYSE的统计,所有的程序化交易中,只有的交 易是指数套利,而剩下的都是非指数套利。

      4、组合策略

      程序化交易的组合策略,就是对投资组合进行 *** 作。当资金量巨大的时候,需要通过分散投资来降低非系统风险,也就是对投资组合进行管理。比如购买一篮子股票组合,或者在投资组合中使用多种交易策略。

      程序化交易可以帮助投资者对投资组合中每一个交易品种或者策略都进行精细的管理和分析,从而降低交易风险,提高管理效率。

      5、其他策略

      除了上面介绍的四种策略之外,还有套期保值策略,使用权证对冲股票风险的对冲策略等。而股指期货的小合约以及期权上市之后,交易策略将会更加丰富。这里暂不逐一介绍。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11864571.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存