设为首页收藏本站

 找回密码
 注册
楼主: gbgsgbgs
打印 上一主题 下一主题

这个交易图表碉堡了,大家看看有没有潜在BUG [复制链接]

Rank: 3Rank: 3

精华
0
UID
104036
积分
182
帖子
26
主题
12
阅读权限
40
注册时间
2012-3-11
最后登录
2015-10-3
11#
发表于 2012-3-26 15:12:15 |只看该作者
Params
    Numeric TrailingSet(0.33);       // 回撤开仓比例设置,从最高点下跌的比例
    Numeric StopLossSet(0.03);        // 止损比例设置
Vars
    Bool startCondition(False);         // 启动条件
    Bool EntryCondition(False);        // 开仓条件
    Bool ExitCondition(False);          // 平仓条件
    NumericSeries highestValue(0);  // 前2个周期的最高价
    NumericSeries lowestValue(0);   // 前2个周期的最低价
    Numeric myEntryPrice(0);          // 开仓价格
    Numeric myExitPrice(0);            // 平仓价格        
Begin
    highestValue = highestValue[1];
    lowestValue = lowestValue[1];
    If(MarketPosition ==0 ) // 当前空仓
    {
        If(Close[2]>Open[2] && Close[1] > Open[1] && Close[1] > Close[2])
        {
            startCondition = True;
            highestValue = max(high[2],high[1]);
            lowestValue = min(low[2],low[1]);
        }
        
        If(startCondition)
        {
            EntryCondition = ((highestValue - Open) / (highestValue - lowestValue) > TrailingSet )&& // 开盘价即满足回撤条件,用开盘价进行交易
            (Open > highestValue -((highestValue - lowestValue)*StopLossSet)) ; //  开盘价不能低于预设的止损价                                                
            If( EntryCondition)
            {
                Buy(1,Open);
            }Else // 再看其它价格是否满足
            {
                EntryCondition = (highestValue - Low) / (highestValue - lowestValue) > TrailingSet ; // 最低价满足回撤条件,用低于TrailingSet设置的最近价位建仓
                If(EntryCondition)
                {
                    myEntryPrice = highestValue - (HighestValue - LowestValue ) * TrailingSet;
                    myEntryPrice = IntPart(myEntryPrice / (PriceScale()*MinMove)) *(PriceScale()*MinMove); // 对价格进行处理                                       
                    If(myEntryPrice >= low &&  myEntryPrice <= High)
                    {
                        Buy(1,MyEntryPrice);
                    }
                }                        
            }
        }
    }else If(MarketPosition == 1) // 当前多仓
    {
        ExitCondition = ( HighestValue - Low )/(highestValue - lowestValue) > StopLossSet;        // 止损条件满足
        If(ExitCondition)
        {
            myExitPrice =  highestValue - (HighestValue - LowestValue ) * StopLossSet;                        
            myExitPrice = IntPart(myExitPrice / (PriceScale()*MinMove)) *(PriceScale()*MinMove); // 对价格进行处理
            Sell(CurrentContracts(),myExitPrice);
        }Else // 获利平仓
        {
            ExitCondition = (high - AvgEntryPrice()) > (highestValue - lowestValue); // 获利平仓条件满足
            If(ExitCondition)
            {
                myExitPrice =  AvgEntryPrice() + (HighestValue - LowestValue );                                
                myExitPrice = IntPart(myExitPrice / (PriceScale()*MinMove)) *(PriceScale()*MinMove); // 对价格进行处理
                If (myExitPrice >= low && myEntryPrice <= high)
                {
                    Sell(CurrentContracts(),myExitPrice);
                }Else
                {
                    Sell(CurrentContracts(),Close);
                }
            }
        }
    }
End
就是这玩意,里面有CLOSE.
是不是全部改成CLOSE[1]就好了?
不过这个公式真心不实用

使用道具 举报

Rank: 2

精华
0
UID
44448
积分
72
帖子
46
主题
4
阅读权限
30
注册时间
2011-6-2
最后登录
2021-4-27
12#
发表于 2012-3-26 21:32:41 |只看该作者
肯定穿越啦
一起研究系统交易,做到极致

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
93775
积分
176
帖子
111
主题
2
阅读权限
40
注册时间
2012-1-21
最后登录
2014-3-5
13#
发表于 2012-3-27 15:59:46 |只看该作者
手续费才设万分之0.2,太低了吧? 交易所都收0.5。高频交易手续费很高的。另外可能你的滑点设的0,改为2试试? 滑点成本也很高的。这2者完全可以使一个看上去好的模型变无效
特立独行的狼

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
12330
积分
838
帖子
254
主题
15
阅读权限
60
注册时间
2010-6-16
最后登录
2017-4-25
14#
发表于 2012-3-27 20:21:02 |只看该作者
请问LZ,这是一个只做多不做空的交易模型么?

使用道具 举报

Rank: 8Rank: 8

精华
0
UID
17581
积分
5464
帖子
275
主题
27
阅读权限
100
注册时间
2010-10-13
最后登录
2021-8-30
15#
发表于 2012-3-27 22:26:56 |只看该作者
本质是出场偷价格,相当于sell(1,high)的效果

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
11672
积分
179
帖子
59
主题
19
阅读权限
40
注册时间
2010-6-5
最后登录
2019-5-28
16#
发表于 2012-3-27 23:18:09 |只看该作者
回复 11# gbgsgbgs 15#一语中的,你在判断的时候用了高低价,但交易的时候用了收盘价,在当前K线,你是不会知道哪个价格是最高或者最低

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
12330
积分
838
帖子
254
主题
15
阅读权限
60
注册时间
2010-6-16
最后登录
2017-4-25
17#
发表于 2012-3-28 07:27:27 |只看该作者
策略的思路非常好,楼主能不能把做空的代码也公布出来。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
111381
积分
174
帖子
76
主题
12
阅读权限
40
注册时间
2012-7-7
最后登录
2014-1-11
18#
发表于 2012-8-15 23:14:54 |只看该作者
双手插口袋 发表于 2012-3-25 13:37
平均利润太低,而且手续费不够考虑极限的滑点
对于这种多交易次数的系统,滑点杀伤更碉堡
建议滑点分两部分 ...

使用道具 举报

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

bottom

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

GMT+8, 2024-5-10 19:10

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部