开拓者期货期权程序化系统交易论坛

标题: 多个国外成熟交易策略分享交流-1 hans123突破系统 [打印本页]

作者: oliverzrl    时间: 2010-7-7 18:22:45     标题: 多个国外成熟交易策略分享交流-1 hans123突破系统

大家好,刚刚来到TB社区,我今年20岁,目前在美国读书准备学习金融工程专业。我的父母是国内私募基金的操盘手,从大概八岁起就逐步接触股票期货和各种金融产品的交易。从最开始的巴菲特式的buy and hold策略,到后来研究长期资本管理公司的无风险套利策略,再到巴菲特,罗杰斯式的宏观对冲策略,以及国内外著名炒单手的日内超短线策略。其间我还研究了德州扑克的打法并获得了www.pokerstrategy.com的钻石会员。我研究自动化交易很多年了,以前主要在MT4平台上设计和制作用于外汇市场自动化交易程序,这是我的实盘账户在线网址:carpower007.mt4live.com过去六个月盈利超过300%资金回撤小于10%.最近受一个私募朋友的委托开发适应国内期货市场的自动化交易程序.在这里我将分享我设计自动化程序的每一个步骤,包括测试报告和代码,由于我在TB方面还是新手希望各位前辈能够多多指点.大家如果常去国外的交易系统论坛的就会发现那里的老外非常有分享精神,一来有很多人把自己已经非常成熟的交易系统的源代码分享出来,二来只要有人提出想法就会有很多智同道和的人帮助他完成交易系统编程工作,通过这样的分享他们的平均水平越来越高.而国内的交易系统设计者们却总是闭门造车,很少互相分享互相帮助.我希望通过我的分享在我们的社区里掀起分享互助的热潮,有更多的高手分享出交易策略有更多的程序员愿意帮助论坛里的朋友编写指标和交易策略使我们的整体交易水平越来越高.在接下来的几篇帖子里我将和大家分享我收集破解的800多个国外自动化交易程序中最优秀的几个的原理,并和大家一起探讨如何把他们移植到国内的交易市场里.这些系统包括:
1.基于交易时段选择和高低点突破的Hans123突破系统
2.适应震荡市场的EA scalper pro剥头皮系统(我外汇实盘用的系统)
3.适应震荡市场的ea boss剥头皮交易系统(汇友曾经有过2周22倍资金回撤0.89%的实盘交易记录)
4.基于新闻公布和基本面瞬时变化的自动化交易程序Luckey news5基于随机漫步原理和金字塔加码的稳健盈利ea point Break 5和其升级版DTS6用于eurgbp eurusd gbpusd的三角套利程序。其中ea boss和ea scalper pro都有一套完整的震荡市场过滤系统如果移植到国内相信对大家的交易应该很有帮助.由于外汇市场的交易手续费大都在百分之二以上.从赌博数学和金融数学的概率期望角度来分析,所有在外汇市场上有效的系统,在国内千分之三的手续费条件都应该是有效的而且利润应该是国外系统的数倍.
首先我来介绍第一个系统Hans123突破交易系统.
大家知道外汇市场主要分为三个交易时段,亚洲盘.欧洲盘和美洲盘.还有一个是只有电子盘交易的时段.其中电子盘和亚洲盘由于参与者较少,和亚洲金融机构实力较小的缘故,行情主要以上下震荡为主,这段时间是趋势交易者的地狱,但是是逆势剥头皮交易的天堂,很多准确率超过99%且风险很小的暴利策略都是针对这个交易时段的设计的(比如ea scalper pro和ea boss)这里我们后面再详细讨论.欧洲盘和美洲盘是参与者最多的时段,是最适合进行突破交易的时段,hans123就是一个非常典型且非常有效的自动化交易策略,它的基本原理是开盘一定时间内突破前一个市场的最高价或最低价顺势做多或做空,经过对止损止盈等参数的优化这套系统可以应用到几乎所有的外汇品种中并且盈利稳定,下面是具体的交易策略.

[ 本帖最后由 oliverzrl 于 2010-7-7 18:24 编辑 ]
作者: oliverzrl    时间: 2010-7-7 18:23:27     标题: 多个国外成熟交易策略分享交流 1突破系统篇

--交易规则—
    初始策略
  1)找出亚洲盘的最低最高点,在欧洲开市时.
  2)挂单最高价+5点买进,最低价-5点卖出。
    3)美洲盘开市前平掉所有仓位.
    1)找出欧洲盘最高最低价在美洲盘开市时.
    2)挂单最高价+5点买进,最低价-5点卖出。
    3)美洲盘收市前平掉所有仓位
  EUR/USD:
Buy Stop = 最高价 + 5;
止盈 = Buy Stop + 80;
止损 = Buy Stop - 50;
Sell Stop = 最低价 - 5;
止盈 = Sell Stop - 80;
止损 = Sell Stop + 50;
有30点浮动利润时将止损移至开仓价位。(30点追踪止损)
GBP/USD:
Buy Stop = 最高价 + 5;
止盈 = Buy Stop + 120;
止损 = Buy Stop - 70;
Sell Stop = 最低价 - 5;
止盈 = Sell Stop - 120;
止损 = Sell Stop + 70;有40点浮动利润时将止损移至开仓价位。(40点追踪止损)
每日早7点,平掉手上所有单子。
实盘使用的时候建议大家根据品种波动率来优化止盈止损等参数以达到最好的效果,这个mt4里可以用遗传基因算法优化来搞定很快,TB上目前用的还是穷举法,期待老大给咱们开发一下呵呵.
以下是原贴地址里面包括交易系统的模板和自动化交易程序国内好像给屏蔽了可能得翻墙
http://www.forex-tsd.com/expert- ... 785-hans123-ea.html
我各人优化以后这个系统的年均盈利在100%左右,资金回撤20%,使用的是分笔成交数据.后面我传了一份国际黄金期货的测试报告这个大家相对外汇还要熟悉一些,大家参考一下。
下面来谈谈如何把这个系统移植到国内的期货市场中来.
我目前的基本想法是这样的,hans123可以有以下几种移植方法
1突破昨日最高最低点5点顺势开仓.收盘前关仓.设置止盈止损追踪止损,止盈止损都设置成参数,以便根据品种波动率优化.这里最好加一个限制开仓时间的参数便于优化交易时段,因为根据我的经验一般来讲每个品种的有效突破都集中在一个特定的时段,并以此时段为中心进行正态分布排列。所以优化交易时段对这个策略来讲非常重要。这个在后面我共享的一个外汇市场的统计表里有说明,大家可以参考(进一步优化的filter:交易时段优化,ATR,Keltner Channel,KDJ等)
2突破前一个交易时段的最高最低点5点顺势开仓,本交易时段结束前平掉所有仓位。设置止盈止损追踪止损,止盈止损追踪止损都设置成参数以便根据品种波动率优化。加一个限制开仓时间的参数便于优化交易时段。(进一步优化的filter:交易时段优化,ATR,Keltner Channel,KDJ等)
我在论坛里逛了下发现了几个和我想法相似的朋友下面是他们已经完成的代码的整理,有些功能还没有实现各位前辈老大可否倾囊相授,告诉我如何实现这些功能,多谢了:)这个突破系统不要nextbar发送功能只要根据所有的即时价位来发出交易信号。另外希望能精确到分钟

[ 本帖最后由 oliverzrl 于 2010-7-7 18:29 编辑 ]
作者: oliverzrl    时间: 2010-7-7 18:26:16

1简单的昨日高低点突破系统:
原贴地址:http://www.tradeblazer.net/forum ... =%E7%AA%81%E7%A0%B4
这个系统我希望高手可以帮助我把那些加仓反手的功能都去掉,或者设置成可以开关的功能然后加入止盈止损和追踪止损并加入交易时间限制,使得我可以针对品种波动率优化参数。
日内高低点突破交易系统
//------------------------------------------------------------------------
// 简称: todayHLCross
// 名称:
// 类别: 交易指令
// 类型: 其他
// 输出:
//------------------------------------------------------------------------
/*
        日内开盘区高低点机械突破系统
*/
Params
        Numeric maxLots(1);//单次开仓手数
        Numeric maxTrad(4);//最大交易次数
        Numeric minSpt(15);//最小开仓间隔bar数
        Numeric splitRate(3); //交易滑点和佣金        
        
        Numeric tradBegin(930); //开仓时间        
        Numeric tradEnd(1430); //开仓截止时间        
        Numeric closeTime(1457); //bar的时间超过此值后平仓,一分钟交易=1457        

Vars
        Numeric splitDot;        //交易滑点
        
        Bool bc(False);//开多条件
        Bool sc(False);//开空条件
        
        Numeric tradePrice(0);

        NumericSeries hh;
        NumericSeries ll;

Begin
        splitDot=splitRate*MinMove();
        
        If(BarStatus==0)
        {
                hh=High;
                ll=Low;
                Return;
        }
        
        if(Day !=Day[1])
        {
                hh=High;
                ll=Low;                }        
        Else        
        If(Time<0.0001*tradBegin)
        {
                if(High>hh[1]) hh=High; Else        hh=hh[1];
                if(Low<ll[1])         ll=Low;  Else        ll=ll[1];               
        }
        Else
        if(Time>=0.0001*tradBegin And Time<=0.1500)
        {
                hh=hh[1];
                ll=ll[1];               
               
                //穿越模式
                bc=CrossOver(Open,hh) Or CrossOver(High,hh) Or CrossOver(Low,hh)  Or CrossOver(Close,hh) ;
                sc=CrossUnder(Open,ll) Or CrossUnder(High,ll) Or CrossUnder(Low,ll) Or CrossUnder(Close,ll);        
               
                if(MarketPosition == 0)
                {
                        // 当前无仓,开始建立多头
                        if(bc)
                        {
                                if(BarStatus==2)        tradePrice= Q_AskPrice +splitDot; Else tradePrice=hh+splitDot;
                                Buy(maxLots,tradePrice);
                        }
                        Else
                        // 当前无仓,开始建立空头
                        If(sc )
                        {
                                if(BarStatus==2)tradePrice= Q_BidPrice -splitDot; Else tradePrice=ll-splitDot;                        
                                SellShort(maxLots,tradePrice);                                
                        }
                }
                //-----------------------------------------------------------------------------
                Else
                {
                        if(MarketPosition > 0 )
                        {
                                // 当前多仓,加仓多头
                                if(bc And BarsSinceLastEntry>minSpt)
                                {
                                        if(BarStatus==2)        tradePrice= Q_AskPrice +splitDot; Else tradePrice=hh+splitDot;
                                        Buy(maxLots,tradePrice);
                                }                        
                                // 当前多头,要求反转为空头
                                if(sc)
                                {
                                        if(BarStatus==2)tradePrice= Q_BidPrice -splitDot; Else  tradePrice=ll-splitDot;                                       

                                        // 平多头开空
                                        SellShort(maxLots,tradePrice);                                       
                                }                                       
                                //持仓处理,止损止盈平仓
                                //........
                        }
                        //-----------------------------------------------------------------------------------------------
                        Else
                        if(MarketPosition < 0 )
                        {        
                                // 当前空仓,加空头
                                If(sc And BarsSinceLastEntry>minSpt)
                                {
                                        if(BarStatus==2)tradePrice= Q_BidPrice -splitDot; Else tradePrice=ll-splitDot;                        
                                        SellShort(maxLots,tradePrice);
                                }                        
                                // 当前空头,要求反转为多头
                                if(bc)
                                {
                                        if(BarStatus==2)        tradePrice= Q_AskPrice +splitDot; Else  tradePrice=hh+splitDot;                                
                                        //平空头,开多
                                        Buy(maxLots,tradePrice);
                                }                                
                                //持仓处理,止损止盈平仓                                
                                //........
                        }
                }               
        }
End

//------------------------------------------------------------------------
// 编译版本        GS2004.06.12
// 用户版本        2008/11/18 18:49
// 版权所有        fish0451
// 更改声明        TradeBlazer Software保留对TradeBlazer平台
//                        每一版本的TrabeBlazer公式修改和重写的权利
//------------------------------------------------------------------------
作者: oliverzrl    时间: 2010-7-7 18:26:57     标题: 2定义时间段内高低点的函数:

原贴地址:http://www.tradeblazer.net/forum ... =%E7%AA%81%E7%A0%B4
vars
     NumericSeries TmpHiLine;
Begin
    If(Date!=Date[1])
    {
        TmpHiLine = InvalidNumeric;
    }else
    {
        TmpHiLine = TmpHiLine[1];
    }

    If(Time >= 0.1100 && Time <= 0.1120)
    {
         If(TmpHiLine  == InvalidNumeric )
               TmpHiLine = High;
         else
               TmpHiLine = max(High,TmpHiLine );
    }   
   
   PlotNumeric("MyHighLine",TmpHiLine );
End
3一个30分钟突破的日内系统
原贴地址:http://www.tradeblazer.net/forum ... =%E7%AA%81%E7%A0%B4
这个系统我认为缺乏一个有效的过滤器会造成很多无效突破,在过滤器中最简单有效的是交易时段过滤器正如我前面提到的有效突破总是集中在一天中的某一时段呈正态分布向两边展开。通过时间过滤器可以大大提高系统的成功率和稳定性。希望高手添加一下。
Params
        Numeric nMins(30);                // N分钟的突破
    Numeric nOffset(3);                // 突破式的价格偏移
Vars
        NumericSeries HighestOf30Min;
    NumericSeries lowestOf30Min;
    Numeric myPrice;
    Numeric MinPoint;
    Numeric lots(1);
Begin
        MinPoint = MinMove*PriceScale;
        If(Date <> Date[1])
        {
                HighestOf30Min = High;
                lowestOf30Min = Low;
        }Else If(Time < 0.0900+nMins*0.0001)
        {
                HighestOf30Min = max(high,HighestOf30Min[1]);
                lowestOf30Min = min(Low,lowestOf30Min[1]);
        }Else
        {
                HighestOf30Min = HighestOf30Min[1];
                lowestOf30Min = lowestOf30Min[1];
        }
        
        If(High >= HighestOf30Min + nOffset*MinPoint && MarketPosition != 1)
        {
                myPrice = HighestOf30Min + nOffset*MinPoint;
                If(Open > myPrice) myPrice = Open;
                Buy(lots,myPrice);
        }

        If(Low <= lowestOf30Min - nOffset*MinPoint && MarketPosition != -1)
        {
                myPrice = lowestOf30Min - nOffset*MinPoint;
                If(Open < myPrice) myPrice = Open;
                SellShort(lots,myPrice);
        }

        If(Time >= 0.1459)
        {
                Sell(lots,Open);
                BuyToCover(lots,Open);
        }
End
作者: oliverzrl    时间: 2010-7-7 18:27:44     标题: 3自适应动态突破系统(Dynamic Break Out II)tb版

3自适应动态突破系统(Dynamic Break Out II)tb版
原贴地址:
这个系统是我看到论坛内一个比较接近专业水准的系统,但是很多人不研究明白交易原理不进行优化就胡乱使用,这个代码也缺少一个原版所拥有的交易时段筛选参数和其它一些filter,恩另外介绍一下dochian-channel,这是一个非常好的通道的指标,基于这个指标设计欧元美元剥头皮策略准确率可以达到99%,大家可以参考这个外汇EA评测网站的测试报告:http://www.fx3721.cn/2009/1203/320.html
    Numeric ceilingAmt(60);
    Numeric floorAmt(20);
    Numeric bolBandTrig(2.00);
Vars
    Numeric lookBackDays(20);         
    Numeric todayVolatility(0);
    Numeric yesterDayVolatility(0);
    Numeric deltaVolatility(0);
    NumericSeries buyPoint(0);
    NumericSeries sellPoint(0);
    NumericSeries longLiqPoint(0);
    NumericSeries shortLiqPoint(0);
    Numeric upBand(0);
    Numeric dnBand(0);
    Numeric MidLine(0);
    Numeric Band(0);
Begin
    todayVolatility = StandardDev(Close,30,1);
    yesterDayVolatility = StandardDev(Close[1],30,1);
    deltaVolatility = (todayVolatility - yesterDayVolatility)/todayVolatility;
    lookBackDays = lookBackDays * (1 + deltaVolatility);
    lookBackDays = Round(lookBackDays,0);
    lookBackDays = Min(lookBackDays,ceilingAmt);
    lookBackDays = Max(lookBackDays,floorAmt);
    MidLine = AverageFC(Close,lookBackDays);
    Band = StandardDev(Close,lookBackDays,bolBandTrig);
    upBand = MidLine + bolBandTrig * Band;
    dnBand = MidLine - bolBandTrig * Band;
    buyPoint = Highest(High[1],lookBackDays);
    sellPoint = Lowest(Low[1],lookBackDays);
    longLiqPoint = Average(Close[1],lookBackDays);
    shortLiqPoint = Average(Close[1],lookBackDays);

if(Close > upBand)  
{
   If(CrossOver(high,buyPoint))   
  {
     Buy(1,max( buyPoint, Low ));

  }
Commentary("多头触发价:"+Text(buyPoint));

}

if(Close < dnBand)
{

   If(CrossUnder(Low,sellPoint ))
   {
      SellShort(1,min( sellPoint , High ));
   }
Commentary("空头触发价:"+Text(sellPoint));

}
if(MarketPosition == 1)
{  
   If(CrossUnder(Low,longLiqPoint ))
   {
      Sell(1,min( longLiqPoint , High ));
   }
Commentary("多头退出:"+Text(longLiqPoint));
}




if(MarketPosition == -1)

{
   If(CrossOver(high,shortLiqPoint))   
  {
     BuyToCover(1,max( shortLiqPoint, Low ));
  }
Commentary("多头退出:"+Text(shortLiqPoint));

}


End
作者: 孤独险胜    时间: 2010-7-7 20:41:16

好贴要顶起来~~
作者: anancn    时间: 2010-7-7 21:10:45

顶了再看。楼主不简单
作者: 明月清风    时间: 2010-7-7 22:15:23

难得!支持
作者: yangtse010    时间: 2010-7-8 01:40:27

期待继续分享。。。
作者: khseaman    时间: 2010-7-8 14:49:13

坚决支持楼主,大家一起进步学习,建议楼主可以将志同道合的人联合起来,开qq群之类的。
作者: crocodile1    时间: 2010-7-8 15:47:15     标题: 向楼主学习!!

向楼主学习!!大家有类似的QQ群吗
作者: 趋势跟踪    时间: 2010-7-10 21:51:54

好贴!!如果语句后面有文字注解就更加适合我们新手了。
作者: wealth_wolf    时间: 2010-7-14 17:01:56

后生可畏,小伙子有前途
作者: shsgl    时间: 2010-7-14 23:54:02

后生可畏,小伙子有前途
作者: aocool    时间: 2010-7-15 11:36:03

感谢分享!
作者: maodong    时间: 2010-7-16 10:32:09

干啥事都要趁早,年轻真好
作者: shenglinqian    时间: 2010-7-19 13:24:54

感谢楼主分享心得,楼主能不能再分享几个国外的论坛咯,谢谢
作者: jiqi    时间: 2010-7-20 21:54:34

国内的金融市场真是需要这样的人才
我将在我儿子10岁的时候给他实盘做
作者: justforever    时间: 2010-7-23 11:18:11     标题: 你好

LZ能否给我推荐一本国外的写程式化交易的比较不错的教材呢~谢谢啊
作者: win5ms    时间: 2010-7-24 14:02:22

难得!支持``````````
作者: 天地哇塞    时间: 2010-8-2 23:46:05

谢谢楼主,强烈赞同并支持你的做法!
作者: oscarjin74    时间: 2010-8-11 22:28:30

标志察看
作者: robert3144    时间: 2010-8-12 13:56:44

请教一下,拨头皮那个,3:00PM,是不是指3:00-3:59这根小时K线的BAR啊。那7:00PM实际上指的是7点种之前的,6:00-6:59的这根小时K线的BAR吧。

就是下班之后的四个小时是指3:00-6:69,这4个小时,不知道我理解的对不对?楼主指教!
那么3:00-5:00这两个小时的时间区间,指的是3:00-4:49,就是3点起,4点59结束的之间的两个小时,是吧
作者: flyfish    时间: 2010-8-14 16:14:28

谢谢楼主。
作者: flyfish    时间: 2010-8-14 21:21:04

2.适应震荡市场的EA scalper pro剥头皮系统(我外汇实盘用的系统)
3.适应震荡市场的ea boss剥头皮交易系统(汇友曾经有过2周22倍资金回撤0.89%的实盘交易记录)

这两个系统呢?期待楼主继续啊。
作者: httparmy    时间: 2010-8-30 17:38:20

很不错,学到很多东西
作者: hhcym    时间: 2010-9-10 10:05:55

3自适应动态突破系统(Dynamic Break Out II)tb版
这个系统不错,测试成功率还可以,但是在实盘的时候会出现连续建仓和信号出现后又消失的情况,期待楼主能改动一下。
作者: zx4226871    时间: 2010-9-13 13:55:11

我也是搞金融工程的,今天我第一次看到国内论坛里有金融工程方面的帖子,很是欣慰,就像楼主说的,交易需要进行相互交流,相互学习,才能激发新的idea,大家不要怕自己的思想被别人偷走了,一个人的思想和理念别人是复制不了的,但通过交流却能从大家哪里获得很多建议和不同的思路,博采众长。交易是一个需要不断创新,不断学习的工作,希望有志同道合的同仁们能相互交流,最好建立一个群。qq:123081486
作者: 游离    时间: 2010-9-21 12:26:34

这个东西不错
作者: 舵手trader    时间: 2010-9-27 17:46:21

坚决支持楼主,大家一起进步学习
作者: bond    时间: 2010-10-18 12:46:42

希望多多交流啊
作者: thjyqr    时间: 2010-10-21 20:46:23

楼主精神可嘉,让本论坛充满学习交流的氛围,值得我们大家大家赞扬!值得我们大家学习!
作者: thjyqr    时间: 2010-10-21 20:54:14

这才是具有实质性的学习程序交易的帖子,可以为新手增加见识,指引思路。
作者: ww123    时间: 2010-10-21 21:32:18

希望多多交流啊
作者: ww123    时间: 2010-10-21 22:02:43

顶了再看。楼主不简单
作者: ww123    时间: 2010-10-21 22:08:19

[attach]3994[/attach][通不过,请帮忙
作者: ww123    时间: 2010-10-21 22:09:39

坚决支持楼主,大家一起进步学习,建议楼主可以将志同道合的人联合起来,开qq群之类的。
khseaman 发表于 2010-7-8 14:49

我赞同
作者: hufumi    时间: 2010-10-24 10:48:07

英雄出少年呀
作者: jack2    时间: 2010-10-26 19:36:58

fg gf dfg d gd
作者: jack2    时间: 2010-10-26 19:38:51

dfdfgdsdfsd f
作者: zzwwlinQH    时间: 2010-10-27 21:22:18

顶了再看。楼主不简单.支持楼主,大家一起进步学习,建议楼主可以将志同道合的人联合起来,开qq群之类的。
作者: firezym    时间: 2010-10-29 16:56:06

zan!!!!!!!!
作者: zlemzlem    时间: 2010-10-31 21:43:32

期待继续分享。。。
作者: xipi123    时间: 2010-11-1 10:18:21

受教了,楼主强人
作者: hy13355    时间: 2010-11-14 20:44:29

谢谢分享,好好研究下
作者: 尤德豆    时间: 2010-11-26 21:07:25

好极了,我喜欢。
作者: 尤德豆    时间: 2010-11-26 21:17:11

楼主不简单
作者: jnzhaojun    时间: 2010-11-27 21:13:04


作者: Joseph0727    时间: 2010-11-27 21:28:56

谢谢大家分享,受益良多。
作者: Mr.Trader    时间: 2010-11-29 10:09:48

好帖,希望有更多交流这方面的帖子
作者: 尤德豆    时间: 2010-11-29 10:34:01

楼主你好,有没有趋势跟踪系统
作者: atu163    时间: 2010-11-29 15:51:23

高手啊,一定要学习,一定要认真学习高手的经验
作者: cym138    时间: 2010-12-2 09:45:20

学习学习
作者: bodhi    时间: 2010-12-8 12:47:37

谢谢楼主分享,好人。
作者: 天柏    时间: 2010-12-8 16:35:27

楼主发短信息给我,我会把我的日内时间区间突破的代码给你交流,因为我也是遇到过滤的问题
作者: Simons    时间: 2010-12-14 10:49:37

QQ群“量化投资程序交易EA群”,群号105012092,欢迎从事量化投资,程序化交易,EA,自动化交易,智能交易的朋友们加入,分享,交流,加群验证信息为上述任一关键字
作者: futureslife    时间: 2010-12-14 11:01:30

学习了!感谢楼主!
作者: 穿堂风    时间: 2010-12-28 11:47:56

3自适应动态突破系统(Dynamic Break Out II)tb版
原贴地址:
这个系统是我看到论坛内一个比较接近专业水准的系统,但是很多人不研究明白交易原理不进行优化就胡乱使用,这个代码也缺少一个原版所拥有的交易时段筛选 ...
oliverzrl 发表于 2010-7-7 18:27

在很多地方见过这个系统,但一直不明白:
if(Close > upBand)  
{
   If(CrossOver(high,buyPoint))   
  {
     Buy(1,max( buyPoint, Low ));

  }
Commentary("多头触发价:"+Text(buyPoint));

}
这里边用到了未来函数,当你知道Close > upBand的时候,你基本上不能以max( buyPoint, Low )的价格去成交,所以实际情况会比这差很多价位。
或许我没看懂?谁解释下?
作者: liq77    时间: 2010-12-28 14:22:13

本帖最后由 liq77 于 2010-12-28 14:25 编辑

59# 穿堂风

我大致看了一下,有好几处确实是这样!
这个系统来自国外的一本关于TS的书(书名忘了),记得其中详细解说了系统原理。
作者: liq77    时间: 2010-12-28 14:26:19

回去找找,看看原版的是什么样。
作者: 穿堂风    时间: 2010-12-28 20:36:08

59# 穿堂风

我大致看了一下,有好几处确实是这样!
这个系统来自国外的一本关于TS的书(书名忘了),记得其中详细解说了系统原理。
liq77 发表于 2010-12-28 14:22

原版我也看了,也是这么处理,很奇怪。
作者: liq77    时间: 2010-12-29 08:03:18

我看的是《Building Winning Trading System with TradeStation》的第6章
与本帖有所不同,摘要如下:
。。。。。。
lookBackDays = MaxList(lookBackDays,floorAmt);
upBand = BollingerBand(Close,lookBackDays,+bolBandTrig);
dnBand = BollingerBand(Close,lookBackDays,-bolBandTrig);
buyPoint = Highest(High,lookBackDays);
sellPoint = Lowest(Low,lookBackDays);
longLiqPoint = Average(Close,lookBackDays);
shortLiqPoint = Average(Close,lookBackDays);
if(Close > upBand) then Buy("DBS-2 Buy") tomorrow at buyPoint stop;
if(Close < dnBand) then SellShort("DBS-2 Sell") tomorrow at sellPoint stop;
if(MarketPosition = 1) then Sell("LongLiq") tomorrow at longLiqPoint stop;
if(MarketPosition = -1) then BuyToCover("ShortLiq") tomorrow at shortLiqPoint
stop;

对照一下可以看出,开仓的处理是不同的。尤其是在下一根K线跳空时,原版是等待回调,这样就可能无法成交,而本帖的系统则做了一个两选一,确保以最高或最低价成交,这就有未来函数之嫌,实际上一根K线未结束时是无法确定最高或最低价的。
作者: 千叶月    时间: 2011-1-2 02:08:06

楼主很厉害 期待和你交流
作者: pitkin    时间: 2011-2-11 09:50:04

好帖子啊!
作者: hyqhgs    时间: 2011-2-15 08:30:11

新手来帮着顶一个
期待更多分享
作者: jastin    时间: 2011-2-20 21:54:18

楼主多弄些上来分享学习下
作者: mel_6e    时间: 2011-2-27 13:40:47

基于这个指标设计欧元美元剥头皮策略准确率可以达到99%
作者: zhuwjjun    时间: 2011-3-4 10:03:26

非常好啊
作者: pannikuaile    时间: 2011-3-4 12:02:03

期待继续分享,支持
作者: smyuw    时间: 2011-3-9 21:40:14

这个帖子,必须顶,
作者: hr2010    时间: 2011-3-21 08:38:25

支持 好文章 学习了
作者: carlos    时间: 2011-3-21 15:46:58

好文章 支持
作者: fenggq    时间: 2011-3-22 09:29:56

学习了,谢谢分享
作者: zx4226871    时间: 2011-3-31 13:18:27

不错的帖子,多多交流。
作者: seanwssw    时间: 2011-3-31 14:02:48

谢谢分享~~~
作者: myangsoft    时间: 2011-4-16 01:04:04

好贴要顶起来 好贴
作者: ma3722    时间: 2011-4-20 22:28:38

向你学习!
作者: nickchen    时间: 2011-4-23 13:57:56

确实不错 希望更多的高手分享他们成熟的系统。
作者: myangsoft    时间: 2011-4-23 14:43:14

好贴 好好学习 谢谢分享
作者: temop3260    时间: 2011-4-25 08:05:24

好贴,难得!支持
作者: nikko1919    时间: 2011-5-8 02:14:33

一定要顶才行哦!!!!!!!!
作者: vipjq    时间: 2011-5-10 20:31:31

顶楼主。。要有开放的心态。
作者: 天道行健    时间: 2011-6-17 09:56:47

好帖,谢谢楼主分享国外优秀系统。
作者: freetiger    时间: 2011-6-17 22:08:45

感谢楼主的分享
作者: Rienzi    时间: 2011-6-18 18:54:42

支持lz的建议!感谢分享!大家多交流吧
作者: glsoul1026    时间: 2011-6-22 19:47:14

很好
作者: reganzhao    时间: 2011-6-25 22:52:34

非常感谢,学习了
作者: djx0201    时间: 2011-7-11 11:08:03

感谢分享
作者: CrewsHe    时间: 2011-7-11 13:16:25

学习中。。。。。。
作者: bruce_dong    时间: 2011-7-22 14:40:03

楼主的东东很值得分享啊
作者: 疾风樱    时间: 2011-7-22 19:50:53

真是好东西
作者: dingyan    时间: 2011-7-26 23:18:44

楼主能大致解释下策略的理论意义吗?
作者: zjfuwen    时间: 2011-9-18 22:44:40

谢谢分享!!!!!!!!!!!
作者: ponts    时间: 2011-9-21 13:22:39

多谢分享!
作者: 太阳之光    时间: 2011-9-25 15:47:15

难得!支持大家一起进步学习
作者: davidjohn    时间: 2011-9-25 22:51:32

谢谢楼主分享
作者: davidjohn    时间: 2011-9-25 22:54:32

谢谢楼主分享
作者: 俯仰自得    时间: 2011-10-1 13:56:48

可惜,好东西就是太少了,楼主只出现过一两次而已
作者: faruto    时间: 2011-10-10 12:45:11

支持,学习一下。O(∩_∩)O
作者: vck    时间: 2011-11-26 21:52:19

这个必须得顶
多谢楼主分享




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2