楼主: 玄霄
226987 1066

[程序化交易] 【推荐】交易系统典藏书籍总汇以及系统交易、程序化交易等经典资料收藏专贴   [推广有奖]

221
玄霄 发表于 2010-9-26 15:18:21
2、定义交易规则变量及参数:交易策略的定量比。在将交易策略思想归纳为明确的交易规则体系后,还必须进一步对其中包含的变量及参数作出明确规定。
仍以简单平均线交易系统为例。
定义1:P=价格(定义所用价格)
定义2:t=今日(定义时间序列)
公式1:MA1(t)=(P1+P2+...PN1)/N1 {定义平均线1}
公式2:MA2(t)=(P1+P2+...PN2)/N2 {定义平均线2}
定义3:N2>N1(定义长期平均线)
定义4:若MA1(t)>MA2(t) 但 MA(t—1)<MA2(t—l)则买入(定义买入规则)
定义5:若MA1(I)<MA2(t) 但 MA(t—l)>MA2(t—1)则卖出(定义卖出规则)
当对交易系统所用变量及公式定义完成后,一个交易系统便从质和量上固定下来,研究者便可研究系统参数在不同值域中变化而使交易系统在给定数据库中的表现变化。
在该例1中,引参数为P1、N1、N2,即研究者可以变换价格定义及均线长度定义。例如,研究者可不使用收盘价,而使用开盘价、或最高价、最低价、甚至某种加工过的价格。均线长度也可根据需要加以变化。
3 编写计算机程序。当交易系统编写为公式和定义系统后研究者需进一步将其编写为计算机可直接使用的计算机语言或软件语言,以使交易系统能够直接上机运算。例如,上述简单平均线系统的定义及公式,编写成某种计算机软件语言后,便成如下形式:
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

222
玄霄 发表于 2010-9-26 15:18:37
Long Entry
    If  Current Bar>1 and Aveage[Close,length1]Crosses over Arerage [Close,length2]
        Buy Next Bar at Market
                        Inputs

                    Length1

                    Length2

Long Exit
    lf  Current Bar>1 and Average[Close,Iength1]Croses Below Arevage[Close,length2]
        Sell Next Bar at Market
                        Inputs
                        Longth1
                        Longth2
                        Short Entry
     If  Current Bar>1 and Average[Close,Length1]Crosses below  Average[Close,Length2]
         Sell Next bar at market
                         Inputs
                         Longth1
                         Longth2  
                         Short Exit
        If Current Bar>1 and Average[Close,Length1]Crosses over Arevage[Close,length2]
          Buy Next Bar at market
                         Inputs
                         Length1
                         Length2
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

223
玄霄 发表于 2010-9-26 15:19:07
以上述计算机软件语言形式,计算机便可直接按交易系统的规则进行运算。如果编写成计算机初级语言,如Basic,或高级语言,如C,则程序编写要更复杂一些。在该计算机程序中,参数为价格、此处定义为Close(收盘价),及均线长度(Length1,Length2)可由研究者按需要变动。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

224
玄霄 发表于 2010-9-26 15:19:39
第三章 交易系统的检验方法



一、交易系统检验的基本原则

“接近实战”是交易系统检验的基本原则。交易系统检验时的条件越接近实战果件,则检验结果越具有实际应用的可靠性。
有丰富实际操作经验的系统研究者与缺乏实际操作经验的系统研究者的最大区别在于,前者明了什么是实际操作条件,从而能在系统开发时充分考虑到这些条件,并能在市场条件变比时,预先估测到该变比对系统表现的可能影响。而缺乏实际操作经验的系统研究者,例如市场分析师、数据商、计算机软件商及某些学术研究人员等等,往往在系统开发时倾向于选择对自己有利的条件,使交易系统的评估带有不同程度的倾向性。
按照“接近实战”的检验原则,作者在长期实践中体会到,在系统检验时如果面临多种条件的选择,应遵循“宁可从严,不可从宽”,“宁可不利于己,不可有利于己”的原则。遵循该项原则,研究者在对交易系统进行统计检验之前,还必须对下述条件进行分析,并将其参数编入计算机程序。

(一)交易成本

交易成本是指执行进出场指令所发生的直接成本。交易成本主要由以下两部分组成,即不变成本(手续费)和可变成本(指令执行价差)。
手续费是指经纪公司对执行交易指令收取的交易费用。
指令执行价差是指预期交易价格与实际交易价格的差。
当然,交易成本中还包括其他若干杂项成本。
手续费作为交易成本中的固定成本,其标准因国家、因市场而有很大差别。以美国为例,股票交易的手续费通常是按交易股数收取,交易股数越大,平均每股支付佣金越低,而期货交易通常按交易合约数的事先约定佣金标准收取,即无论是股票交易和期货交易,股票价位和期货价位的变动通常不影响手续费的收取标准。这一点对系统交易检验较为有利,因为可设定为一个固定参数值。
在中国,按目前的市场条件,股票交易收费与期货交易收费通常都与股票价应和期货价位有关,因为手续费通常按交易额的一个比例收取。这种规定使手续费成本的确定增加了难度。另外,对小额股票投资资金来说,一些经纪公司对未成交单也要收取费用,等等。总之在中国目前的市场条件下,手续费比较西方发达国家增加了若于不确定因素。在系统检验中,应本着“就高不就低”的原则进行,即宁可高估手续费成本,也不要低估手续费成本。
指令执行价差在美国等发达国家市场中是一个必须严肃对待的问题。由于买卖差价的存在及市场流动性变动的影响,指令执行价差变动范围很大,通常可为手续费的一至两倍。
在中国目前的市场条件下,由于进出场指令较为单一,通常只接受限价单,因此通常不存在显性指令执行价差的问题。对个别服务较好的经纪公司,可安排市价单指令,这时便会产生指令执行价差的问题。但是在中国目前市场服务较为单一的条件下,虽然通常不存在指令执行价差的问题,但研究者必须注意“隐性”指令执行价差的问题。由于中国股票与期货市场不设有场内经纪商与场内交易商制度以及单一限价指令制度,使得交易信号发生——给出指令——执行指令这一过程所需时间要大大长于在美国等发达国家市场进行交易,这一差别同样造成预期理想交易价位与实际交易价位的差别,而目有时这一差别还相当大。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

225
玄霄 发表于 2010-9-26 15:19:58
为什么要如此认真地考虑交易成本的影响?因为:
1、交易成本是决定交易系统表现的重要条件之一。请看以下举例说明。设有两个交易系统:交易系统1和交易系统2。
假设经过六个同的操作,各项数据如下
                      交易系统1     交易系统2
      所需操作资金       5 000        5 000
      盈利(佣金前)     1000         1000
      交易次数             5            20
很明显,对交易系统1而言,其临界交易成本为200;对交易系统2而言,其临界交易成本为50。若交易成本大于50,则交易系统2成为亏损系统。只有当交易成本大于200时,交易系统1才成为亏损系统。因此,当评估或比较交易系统时,交易成本是一个重要的参考因素。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

226
玄霄 发表于 2010-9-26 15:20:24
2、交易成本是决定交易系统类型的重要条件之一。对任何交易系统而言,都存在一个临界交易成本。而对任何交易系统而言,依作者多年实践经验的体验和理论研究的心得,如果一个交易系统有能力成为一个实用的系统,则应当有能力在任何波长上交易(在下考虑成本和指令下达方式的条件下)按照Chase理论,模式结构在任何一个层次上都是相同的。这就是说,从单纯交易信号的角度来评价,交易波长应当不影响交易信号的成功率。比方说:如果一个人研究出一个交易系统,在日线上检验是成功的,但放到5分钟线上则存在明显缺陷,那么依作者多年实践经验,这样的系统是非常值得怀疑的。反之,如果一个系统在例如5分钟线上是成功的,但在日线上是不成功的,这个系统同样不可信任。如果一个交易系统的信号成功率在各层次波长上保持稳定,则可认为是一个稳定的系统。这时,该系统的最小交易波长,由交易成本和指令周转时间来决定。依作者多年实践经验,最小交易波长应当最好大于交易成本的5倍,最低不能小于3倍,否则会必然成为一个亏损系统。例如,SP500指数期货的交易成本中佣金设为50美金(一口合约),相当于10点图上运动。SP500的法定最小运动距离(1 Tick)=5点。假设指令执行成本为50美金,则交易成本=100美金=20点运动。设经过统计研究SP500在2分钟线上的平均波长为100点。则知2分钟波长=5X交易成本。由此可知,单由交易成本决定SP500的最小交易波长区大于2分钟线。同时,由指令周转时间也决定交易波长不能小于2分钟。依同样的原则,在中国目前的市场条件下,各证券和期货交易品种都可找到其最小交易波长。若交易周期小于最小交易波长,则必定成为一个亏损系统,而只能是一个对经纪公司有利的系统。
大多数投资人通常都忽略了这样一个重要研究:即进入任何一个市场之前,都应先确定该市场的最小交易波长。因此,在选择交易系统类型时,无论是长线系统、中线系统、或短线系统,交易成本都是一个重要决定因素。交易波长越大,交易成本越低,单次交易风险越大;交易波长越小,交易成本越高,单次交易风险越小,单次交易成本与单次交易风险的关系是相互消长(Toadeoff)关系,投资人的投资技巧中的一个重要表现就是能够在这种相互消长关系中寻找到动态平衡点。
交易成本的研究目的是:①确定交易系统的最小交易波长。②在交易成本与交易风险间寻找到动态平衡点。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

227
玄霄 发表于 2010-9-26 15:21:58
(二)市场价格运动模式

交易系统检验过程就是交易系统仿真过程。在系统检验中,除必须考虑交易成本因素外,还必须对市场价格运动模式作如下研究:
1、指令类型与成交机会:实际成本与机会成本。很多交易系统的研究者由于本身缺乏操作经验,在交易系统检验过程中.往往忽略对成交机会的研究,而结果往往是高估了交易系统的表现。交易系统检验必须考虑机会成本因素。因为交易指令条件越灵活,则实际交易成本越高;交易指令条件越固定,则实际交易成本越低。但与此同时,交易指令条件越灵活,则机会成本越低;交易指令条件越固定,则机会成本越高。
因此:交易指令条件越灵活——实际交易成本越高——交易机会成本越低;
      交易指令条件越固定——实际交易成本越低——交易机会成本越高。
很明显,在指令执行的实际成本和机会成本之间,存在着相互消长关系(trade off)。这种相互消长关系,是正确评价交易系统真实表现的重要条件之一,因此系统研究者和系统使用着应当引起高度重视。特别是一些缺乏国际市场操作经验的国内投资人,更应从国际市场操作规则中,了解正确判断市场操作机会成本的重要性。
在美国证券与期货市场上 有下列主要的交易指令:
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

228
玄霄 发表于 2010-9-26 15:22:07
(1)市场价指令(Marketl order)。市场价指令,是指在现有市场价格水平上指令买进或卖出。市场价应是场内经纪人在执行指令时所能尽力得到的最先价格。在存在买卖差价的情况下,投资人得到的通常是对其不利的价格。市场价是成交可能性最大的指令形式。
(2)限定价指令(Limit order)。限定价指令,是指在成交价不少于指定买入价或卖出价的价格水平上指令买进或卖出。限定价是在市场价格经过指定价位时,成交可能性最小的指令形式。这里应注意在美国等国外市场上限定价和中国目前市场条件下限定价之间的区别。在国外市场上,限定价的执行时机一定是在指令下达后,市场价格达到并通过指定价格之后。在中国目前市场条件下,限定价的执行时机不一定要等到市场价格达到并通过指定价格之后。在国外市场上,限定价的实际执行价格往往对指令发出人最有利,但成交可能性最小。在中国目前的市场条件下,中国现行的限定价制度是同时具备了国外市场价与国外限定价的缺点。因此,在交易系统检验时,研究者应待别注意对成交条件和成交机会的研究。
(3)止损价指令(Stop order)。止损价指令,并非顾名思义单纯被用于土损。在很多情况下,止损价指令被投资人用于进场指令。在用于进场指令时,止损价指令是一种顺势操作指令,在用于出场指令时,是一种上损方式。止损价指令,是指令在市场价格达到并通过指定价格时,以市场价指令形式按不利于指令发生操作方向操作的指令。
例如,卖出止损价指令(sell stop order)要使指定卖出价低于现行市场价格。买入止损价指令(buy stop order)要使指定买入价高于现行市场价格。换句话说,止损价指令是一种市场价格越跌越卖,市场价格越涨越买的指令形式。
(4)目标市场价指令(market If Touched order)。目标市场价指令,是指在市场价格达到指定价位时,以市场价指令形式按有利于指令发生操作方向操作的指令。例如,卖出目标市场价指令(sell MIT)要使指定卖出价高于现行市场价格。买入目标市场价指令(buy MIT)要使指定买入价低于现行市场价格。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

229
玄霄 发表于 2010-9-26 15:22:18
(4)目标市场价指令(market If Touched order)。目标市场价指令,是指在市场价格达到指定价位时,以市场价指令形式按有利于指令发生操作方向操作的指令。例如,卖出目标市场价指令(sell MIT)要使指定卖出价高于现行市场价格。买入目标市场价指令(buy MIT)要使指定买入价低于现行市场价格。
换句话说,目标市场价格指令在用于进场指令时,是一种逆势操作方式。在用于出场指令时,是一种盈利出场方式。目标市场价指令是越跌越买,越涨越卖的指令形式。
上述四种基本的指令形式,按成交机会由大到小排列,依次为 Market Order, MIT Order, Stop Oder, Limit Order。
这里需强凋指出,在目前中国的市场条件下,虽然在交易所水平上和经纪公司水平上不能接受这些指令形式,但是有条件的投资人可以通过一定的组织形式近以地以人工方式模拟这些指令形式,从而获得类似的操作效果。
由上述四种基本的指令形式出发,还演化出下列常用的指令形式:
仅由收盘价止损指令(Stop close only order)
仅执行开盘价指令(opening only order)
按限定价止损指令(stop With Limit order)
优于指定价止损指令(stop limit order)
收盘时按市场价指令(Market on Close)(MOC)
先执行指令撤销未执行指令(order Cancels order)(O_C_O)
等等。对这些指令形式,这里就不再作详细解释。因为不论指令形式如何变化,它们都必然遵循下列原则:
交易指令条件越灵活——实际交易成本越高——交易机会成本越低。
交易指令条件越固定——实际交易成本越低——交易协会成本越高。
从以上关系变比我们也可以看出,在交易系统的研究开发中,为什么要坚持“接近实战”的原则,为什么要遵循“从难从严”的原则。如果系统的设计者有意低估系统的交易成本以增加系统的表现,则市场一定会以提高交易机会成本的方式来惩罚系统的使用者。在商业化交易系统市场上,被系统设计者有意低估的系统交易成本最终会以机会成本提高的方式转嫁给交易系统的使用者。因此,如果系统研究者最终是系统的使用者,那么他一定不要因低估实际交易成本而导致最终承受增加的交易机会成本。如果系统的使用者是商业化交易系统的购买者,那么他一定要注意所购系统的交易条件,以防止系统开发者向自己身上转移交易机会成本。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

230
玄霄 发表于 2010-9-26 15:22:32
根据作者多年来在系统研究开发中的经验,作者本人一般都遵循“最差”进出场价格原则,即“价位最差,时间最差”原则。例如,在系统检验时如果以日线为信号波波段。那么作者通常规定买入价(或做多价)为信号发生后第二线的最高价,买出价(或做空价)为信号发生后第二线的最低价,即:



由此可以推知,作者在系统研究时规定的操作条件,通常都劣于实战条件,以保证交易系统能最大限度的接近实战条件,并给系统的实际表现留有余地。因为在系统研究时,如果一个系统按假设的最坏市场操作条件都可以有令人满意的表现,那么系统在实战中的成功机率便可大大提高。
下面再看一个实际例子来说明为什么在系统检验时通常应规定较严的进出场条件。
        例:上海股市:辽宁成大  此例为实战例子        L=最低价
  下载 (7.98 KB)

2010-3-23 10:06
从上可以看出,14·00是短期支持价位,如果以限定价形式进场,设限定价为14·05,那么在1996年10用3日,10月9日,10月10日,11月1日,11月22日 都几乎不可能做到,只有12月7日才有较大可能。这是实际挥作情况但是如果以该图数据作为历史数据作系统检验,系统研究者如果假设在上述日期都可以在14·05以下价位成交,结果则会大大夸大系统在该阶段的表现。
[color=Blue]Live like you never lived before ,love like you never get hurt[/color].

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jr
拉您进交流群
GMT+8, 2026-1-31 09:08