设为首页收藏本站

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

一个简单顺势交易系统的例子 [复制链接]

Rank: 2

精华
0
UID
18167
积分
60
帖子
9
主题
4
阅读权限
30
注册时间
2010-10-22
最后登录
2019-3-30
41#
发表于 2011-8-17 11:27:47 |只看该作者
回复 40# lzl563

我也是,编了好多系统都不出现信号的。要么就是出一次信号,不知道为何原因?

使用道具 举报

Rank: 2

精华
0
UID
53648
积分
79
帖子
44
主题
2
阅读权限
30
注册时间
2011-7-15
最后登录
2015-3-18
42#
发表于 2011-8-24 23:20:20 |只看该作者
谢谢,学习了!
100 字节以内
不支持自定义 Discuz! 代码

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
15265
积分
174
帖子
39
主题
4
阅读权限
40
注册时间
2010-8-18
最后登录
2016-1-30
43#
发表于 2011-9-27 09:09:53 |只看该作者
回复 40# lzl563


    哦也是做空条件不提示。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
57291
积分
165
帖子
48
主题
8
阅读权限
40
注册时间
2011-8-2
最后登录
2014-1-24
44#
发表于 2011-10-1 11:52:29 |只看该作者
是学习的好范例,可是测试的效果并不好!是什么原因?思路的问题?
做傻瓜、得永生。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
15265
积分
174
帖子
39
主题
4
阅读权限
40
注册时间
2010-8-18
最后登录
2016-1-30
45#
发表于 2011-10-23 12:32:33 |只看该作者
CurrentContracts
说明获得当前持仓的持仓合约数。
语法Numeric CurrentContracts()
参数
备注获得当前持仓的持仓合约数,返回值为整型。
只有当MarketPosition != 0时,即有持仓的状况下,该函数才有意义,否则返回0。
多头持仓返回正数,空头持仓返回负数。
示例当前空头持仓2手,CurrentContracts则返回-2。

原来这个函数的问题。简单修改成为空头顺势的时候,没注意这个返回的是负数,导致不能平仓。
直接buytocover(0,价格);更简洁。

使用道具 举报

Rank: 4

精华
0
UID
88963
积分
269
帖子
208
主题
16
阅读权限
50
注册时间
2011-12-25
最后登录
2022-12-9
46#
发表于 2011-12-26 10:20:36 |只看该作者
努力学习中,好多东西不明白

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
15265
积分
174
帖子
39
主题
4
阅读权限
40
注册时间
2010-8-18
最后登录
2016-1-30
47#
发表于 2012-2-8 16:03:29 |只看该作者
回复 1# nopain


    稍微改了一下条件,日线回测还挺好。不过市盘中价格的触发是有未来的。
  1. //------------------------------------------------------------------------
  2. // 简称: shunshi_B
  3. // 名称: 顺势_B
  4. // 类别: 公式应用
  5. // 类型: 用户应用
  6. // 输出:
  7. //------------------------------------------------------------------------

  8. Params
  9.     Numeric TrailingSet(0.30);       // 回撤开仓比例设置,从最高点下跌的比例
  10.     Numeric StopLossSet(0.42);        // 止损比例设置
  11.         Numeric lots(1);
  12. Vars
  13.     Bool startCondition(False);         // 启动条件
  14.     Bool EntryCondition(False);        // 开仓条件
  15.     Bool ExitCondition(False);          // 平仓条件
  16.     NumericSeries highestValue(0);  // 前2个周期的最高价
  17.     NumericSeries lowestValue(0);   // 前2个周期的最低价
  18.     Numeric myEntryPrice(0);          // 开仓价格
  19.     Numeric myExitPrice(0);            // 平仓价格        
  20. Begin
  21.         If(BarStatus==2 && high==low) return; //日线级别的回撤开仓,适合用这种过滤方法。
  22.         highestValue = max(high[2],high[1]);
  23.         lowestValue = min(low[2],low[1]);
  24.     If(MarketPosition ==0 ) // 当前空仓
  25.     {
  26.         If(Close[2]>Open[2] && Close[1] > Open[1] && Close[1] > Close[2])
  27.         {
  28.             startCondition = True;
  29.   //          highestValue = max(high[2],high[1]);
  30.   //          lowestValue = min(low[2],low[1]);
  31.         }
  32.         
  33.         If(startCondition)
  34.         {
  35.             EntryCondition = ((highestValue - Open) / (highestValue - lowestValue) > TrailingSet )&& // 开盘价即满足回撤条件,用开盘价进行交易
  36.             (Open > highestValue -((highestValue - lowestValue)*StopLossSet)) ; //  开盘价不能低于预设的止损价                                                
  37.             If( EntryCondition)
  38.             {
  39.                 Buy(lots,Open);
  40.             }Else // 再看其它价格是否满足
  41.             {
  42.                 EntryCondition = (highestValue - Low) / (highestValue - lowestValue) > TrailingSet ; // 最低价满足回撤条件,用低于TrailingSet设置的最近价位建仓
  43.                 If(EntryCondition)
  44.                 {
  45.                     myEntryPrice = highestValue - (HighestValue - LowestValue ) * TrailingSet;
  46.                     myEntryPrice = IntPart(myEntryPrice / (PriceScale()*MinMove)) *(PriceScale()*MinMove); // 对价格进行处理                                       
  47.                     If(myEntryPrice >= low &&  myEntryPrice <= High)
  48.                     {
  49.                         Buy(lots,MyEntryPrice);
  50.                     }
  51.                 }                        
  52.             }
  53.         }
  54.     }else If(MarketPosition == 1) // 当前多仓
  55.     {
  56.         ExitCondition = ( HighestValue - Low )/(highestValue - lowestValue) > StopLossSet;        // 止损条件满足
  57.         If(ExitCondition)
  58.         {
  59.             myExitPrice =  highestValue - (HighestValue - LowestValue ) * StopLossSet;                        
  60.             myExitPrice = IntPart(myExitPrice / (PriceScale()*MinMove)) *(PriceScale()*MinMove); // 对价格进行处理
  61.             Sell(CurrentContracts(),myExitPrice);
  62.         }Else // 获利平仓
  63.         {
  64.             ExitCondition = (high - AvgEntryPrice()) > (highestValue - lowestValue); // 获利平仓条件满足
  65.             If(ExitCondition)
  66.             {
  67.                 myExitPrice =  AvgEntryPrice() + (HighestValue - LowestValue );                                
  68.                 myExitPrice = IntPart(myExitPrice / (PriceScale()*MinMove)) *(PriceScale()*MinMove); // 对价格进行处理
  69.                 If (myExitPrice >= low && myEntryPrice <= high)
  70.                 {
  71.                                         Sell(lots,myExitPrice);
  72.                 }Else
  73.                 {
  74.                                         Sell(lots,Close);
  75.                 }
  76.             }
  77.         }
  78.     }
  79. End

  80. //------------------------------------------------------------------------
  81. // 编译版本        GS2010.12.08
  82. // 用户版本        2011/10/22 08:33
  83. // 版权所有        foodmax
  84. // 更改声明        TradeBlazer Software保留对TradeBlazer平台
  85. //                        每一版本的TrabeBlazer公式修改和重写的权利
  86. //------------------------------------------------------------------------
复制代码

使用道具 举报

Rank: 1

精华
0
UID
97789
积分
42
帖子
5
主题
0
阅读权限
10
注册时间
2012-2-15
最后登录
2012-3-6
48#
发表于 2012-2-20 16:06:12 |只看该作者
很好的例子,我就从这个开始下手学习tradeblazer  +1

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
101507
积分
3694
帖子
194
主题
25
阅读权限
80
注册时间
2012-3-1
最后登录
2016-6-4
49#
发表于 2012-3-7 18:44:25 |只看该作者
ding 顶························

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
34622
积分
607
帖子
22
主题
1
阅读权限
60
注册时间
2011-4-22
最后登录
2012-5-1
50#
发表于 2012-3-10 05:00:46 |只看该作者
等有~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

使用道具 举报

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

bottom

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

GMT+8, 2024-4-20 18:40

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部