设为首页收藏本站

 找回密码
 注册
查看: 5772|回复: 1
打印 上一主题 下一主题

交易开拓者日内高低点突破交易系统[疯狂宽客源码分享] [复制链接]

Rank: 1

精华
0
UID
198264
积分
6
帖子
4
主题
2
阅读权限
10
注册时间
2014-12-3
最后登录
2017-6-5
跳转到指定楼层
1#
发表于 2015-3-19 21:48:03 |只看该作者 |倒序浏览
//------------------------------------------------------------------------
// 简称: 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(Time0.0001*tradBegin) { if(Highhh[1]) hh=High; Else hh=hh[1]; if(Lowll[
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 BarsSinceLastEntryminSpt) { if(BarStatus==2) 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
//------------------------------------------------------------------------

               }


更多策略请请访问疯狂宽客论坛:http://bbs.crazyquants.com/forum.php


Rank: 1

精华
0
UID
206861
积分
3
帖子
3
主题
0
阅读权限
10
注册时间
2015-4-10
最后登录
2015-6-11
2#
发表于 2015-5-15 15:19:32 |只看该作者
你好,这个模型用在什么品种哪个周期上比较好?

使用道具 举报

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

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-4 10:11

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部