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

标题: 一个文华交易系统的移植例子 [打印本页]

作者: nopain    时间: 2007-7-21 19:02:14     标题: 一个文华交易系统的移植例子

多空趋势-交易系统之文华的公式脚本:
  1. MA1:=EMA(CLOSE,16);
  2. MA2:=EMA(CLOSE,35),COLORYELLOW;
  3. MA3:=EMA(CLOSE,60);
  4. MA4:=REF(HIGH,1);
  5. LOWV:=LLV(LOW,9);
  6. HIGHV:=HHV(HIGH,9);
  7. RSV:=EMA((CLOSE-LOWV)/(HIGHV-LOWV)*100,3);
  8. K:=EMA(RSV,3);
  9. D:=MA(K,3);
  10. MV5:=MA(VOL,5);
  11. KK:=REF(K,1);
  12. PP:=REF(LOW,1);
  13. VAR3:=(2*CLOSE+HIGH+LOW)/4;
  14. VAR4:=LLV(LOW,33);
  15. VAR5:=HHV(HIGH,33);
  16. ZL:=EMA((VAR3-VAR4)/(VAR5-VAR4)*100,17);
  17. SH:=EMA(0.667*REF(ZL,1)+0.333*ZL,2);
  18. LC:=REF(CLOSE,1);
  19. RSI:=SMA(MAX(CLOSE-LC, 0), 6, 1)/SMA(ABS(CLOSE-LC), 6, 1)*100;
  20. CROSS(CLOSE,MA1)&&(K>D)&&(ZL>SH)||CROSS(MA1,MA2)&&(ZL>SH)&&(VOL>1.25*MV5)&&(K>D)||CROSS(K,D)&&(CLOSE>MA1)&&(ZL>SH)||CROSS(RSI,70),BK;
  21. CROSS(PP,CLOSE)&&(D>K)&&(SH>ZL)||CROSS(D,K)&&(CLOSE<MA1)&&(MA1<MA2)||CROSS(KK,K)&&(SH>ZL),SK;
  22. CROSS(D,K)||(CLOSE<MA1*1.001),SP;
  23. CROSS(K,D)||(CLOSE>MA1*1.001),BP;
复制代码


TradeBlazer公式代码:
  1. //------------------------------------------------------------------------
  2. // 简称: Test
  3. // 名称: 多空趋势交易系统
  4. // 类别: 交易指令
  5. // 类型: 其他
  6. // 输出:
  7. //------------------------------------------------------------------------

  8. Params
  9.         Numeric Length1(16);
  10.         Numeric Length2(35);
  11.         Numeric Length3(9);
  12.         Numeric Lots(1);
  13. Vars
  14.         NumericSeries Value1;
  15.         NumericSeries Value2;
  16.         Numeric HighestValue;
  17.         Numeric LowestValue;
  18.         NumericSeries Value5;
  19.         NumericSeries RSV;
  20.         NumericSeries KValue;
  21.         NumericSeries DValue;
  22.         Numeric AvgVol5;
  23.         NumericSeries CloseTmp1;
  24.         NumericSeries CloseTmp2;
  25.         NumericSeries RSIValue;
  26.         NumericSeries PreLow;
  27.         NumericSeries PreKValue;
  28.         Numeric Highest33Value;
  29.         Numeric Lowest33Value;
  30.         NumericSeries VarTmp1;
  31.         NumericSeries VarTmp2;
  32.         NumericSeries ZL;
  33.         Numeric SH;
  34. Begin
  35.         Value1 = XAverage(Close,Length1);
  36.         Value2 = XAverage(Close,Length2);
  37.         HighestValue = HighestFC(High,Length3);
  38.         LowestValue = LowestFC(Low,Length3);
  39.         Value5 = (CLOSE-LowestValue)/(HighestValue-LowestValue)*100;
  40.         RSV = XAverage(Value5,3);
  41.         KValue = XAverage(RSV,3);
  42.         DValue = AverageFC(KValue,3);
  43.         PreKValue = KValue[1];
  44.         PreLow = Low[1];
  45.         AvgVol5 = Average(Vol,5);
  46.         Highest33Value = HighestFC(High,33);
  47.         Lowest33Value = LowestFC(Low,33);
  48.         VarTmp1 =((2*CLOSE+HIGH+LOW)/4 - Lowest33Value )/(Highest33Value - Lowest33Value) * 100;
  49.         ZL = XAverage(VarTmp1,17);
  50.         VarTmp2 = 0.667*ZL[1] + 0.333*ZL;
  51.         SH = XAverage(VarTmp2,2);
  52.         CloseTmp1 = Max(Close - Close[1], 0);
  53.         CloseTmp2 = Abs(Close - Close[1]);
  54.         RSIValue = SMA(CloseTmp1,6)/SMA(CloseTmp2,6) *100;
  55.        
  56.         // Buy
  57.         If( (CrossOver(Close,Value1 ) && (KValue > DValue) && (ZL>SH)) Or
  58.                  (CrossOver(Value1,Value2) && (ZL>SH) && (Vol > 1.25 * AvgVol5) && (KValue > DValue)) Or
  59.                  (CrossOver(KValue,DValue) && (Close > Value1) && (ZL>SH)) Or
  60.                  (CrossOver(RSIValue,70)))
  61.         {
  62.                 Buy(Lots,NextOpen,True);
  63.         }
  64.        
  65.         // SellShort
  66.         If( (CrossOver(PreLow,Close) && (KValue > DValue ) && (SH>ZL) ) Or
  67.                  (CrossOver(DValue,KValue) && (Close < Value1) && (Value1 < Value2)) Or
  68.                  (CrossOver(PreKValue,KValue)&& (SH>ZL)))
  69.         {
  70.                 SellShort(Lots,NextOpen,True);
  71.         }
  72.        
  73.         // Sell
  74.         If(CrossOver(DValue,KValue) || Close < Value1 * 1.001)
  75.         {
  76.                 Sell(Lots,NextOpen,True);
  77.         }
  78.        
  79.         // BuyToCover
  80.         If(CrossOver(KValue,DValue) || Close > Value1 * 1.001)
  81.         {
  82.                 BuyToCover(Lots,NextOpen,True);
  83.         }
  84. End

  85. //------------------------------------------------------------------------
  86. // 编译版本        GS2004.06.12
  87. // 用户版本        2007-06-25 10:37
  88. // 版权所有        TradeBlazer
  89. // 更改声明        TradeBlazer Software保留对TradeBlazer平台
  90. //                        每一版本的TrabeBlazer公式修改和重写的权利
  91. //------------------------------------------------------------------------
复制代码

作者: ATL    时间: 2007-7-21 19:06:53

先顶再看。太好了,要的就是这样的东东啊!!!!!!!
作者: bcsunwww    时间: 2007-7-22 09:09:00

学习学习.保留重写的权利
作者: nopain    时间: 2007-7-29 08:49:57

原帖由 wgcpsxj 于 2007-7-29 06:24 发表
保留重写的权利    是指什么意思?


这是系统公式的版权模版内容,
系统公式可能在升级的过程中进行内容调整或修改。
作者: yml0396    时间: 2007-11-29 10:43:55     标题: 你好:

我把老师上面的公式复制到我的交易指令中,点击校验保存公式,然后出现"编译校验公式,请稍候"结束后,最下面一行仍然是已保存  未校验,我不明白,请回复.谢谢
作者: 小米    时间: 2007-11-29 11:01:11

你要点击的是"保存"右边的那个带绿色小勾的"验校保存公式"才行.否则只是保存没有验校,这样是没法将公式插入到图表中使用的.
我这边试了一下是验校保存成功的.你再试一次吧.
作者: yml0396    时间: 2007-11-29 11:55:19     标题: 小米你好:

我按照你说的重复一遍,不行,有这方面的教材吗.谢谢你.
作者: 小米    时间: 2007-11-29 12:11:12

不太清楚你所指的是教材是哪方面.
软件中F1是帮助文档,可先看一下.另外还有关于软件使用以及编写公式的入门教程
http://www.tradeblazer.net/forum/thread-155-1-1.html
http://www.tradeblazer.net/forum/thread-242-1-1.html
http://www.tradeblazer.net/forum/thread-905-1-1.html
作者: 北门吹风    时间: 2011-10-20 14:08:29

顶起来,有个问题。提示说“函数NEXTOPEN没有被声明”,什么问题,如何解决?
作者: Amymylove    时间: 2011-10-20 14:24:26

回复 9# 小米
好东西,收藏学习了。
作者: 蔡宛宏    时间: 2011-12-16 23:06:32

模型测试效果怎么样?
作者: nickchen    时间: 2012-1-2 21:18:10

在V4.2.3编译时提示for,while,if,else中包含序列函数,可能存在潜在的逻辑错误,请确认代码无误。请老师解释一下。谢谢。
作者: nickchen    时间: 2012-1-2 21:19:00

在V4.2.3编译时提示for,while,if,else中包含序列函数,可能存在潜在的逻辑错误,请确认代码无误。请老师解释一下。谢谢。错误代码W0201
作者: nickchen    时间: 2012-1-2 21:20:03

本帖最后由 nickchen 于 2012-1-2 21:22 编辑

在V4.2.3编译时提示for,while,if,else中包含序列函数,可能存在潜在的逻辑错误,请确认代码无误。请老师解释一下。谢谢。错误代码W0201
作者: yml6363    时间: 2012-7-21 12:28:38

学习学习
作者: CHAXINQING    时间: 2012-11-17 23:20:24

等待回答




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