请选择 进入手机版 | 继续访问电脑版
楼主: oldxy199
17846 81

[交易策略] [代码分享]《日内交易策略--谷物期货交易实战指南》中的策略与代码   [推广有奖]

  • 1关注
  • 2粉丝

本科生

9%

还不是VIP/贵宾

-

威望
0
论坛币
204 个
通用积分
1.1217
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
737 点
帖子
67
精华
0
在线时间
26 小时
注册时间
2008-5-2
最后登录
2016-4-16

oldxy199 发表于 2015-3-15 16:18:15 |显示全部楼层 |坛友微信交流群
相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

2.jpg (45.96 KB, 需要: 2 个论坛币)



1.jpg (35.46 KB, 需要: 3 个论坛币)


代码如下


本帖隐藏的内容

  1. Params
  2. vars
  3.   Bool     buycon;               //开多条件
  4.   Bool     sellcon;              //开空条件
  5.   Bool     specialbuy;
  6.   Bool     specialsell;
  7.   Numeric  r;
  8.   Numeric  temp;
  9.   Numeric  MyEntryPrice;
  10.   String   sFileName;
  11.   Numeric  BST;  
  12.   Numeric  HD;
  13.   Numeric  LD;
  14.   Numeric  N;
  15.   Numeric  i;
  16.   
  17. begin
  18.   BST=BarsSinceToday+1;
  19.   sFileName="d:\\my_TB\\RetracementBreakupBT"+Text(CurrentDate)+".log";
  20.   PlotString("barnum",Text(BST),low-5);
  21.   N=BST;                     //求从开始到前一根K线的最大值最小值,Lowest和LowD求最值都包含了这个K线的最值。
  22.   LD=Low[1];
  23.   For i = 1 To N-1
  24.   {
  25.     temp=LD;
  26.     LD=Min(Low,temp);
  27.   }
  28.   
  29.   HD=High[1];
  30.   For i = 1 To N-1
  31.   {
  32.     temp=HD;
  33.     HD=Max(High,temp);
  34.   }
  35.   
  36.   FileAppend(sFileName, "\n进入第"+Text(BST)+"跟K线");
  37.   FileAppend(sFileName, "\n已知最低点"+Text(LD)+"  GetGlobalVar(0)"+Text(GetGlobalVar(0))+"  GetGlobalVar(1)"+Text(GetGlobalVar(1))+"  GetGlobalVar(2)"+Text(GetGlobalVar(2)));
  38. If(Date != Date[1] || BarStatus == 0)   
  39. {
  40.    SetGlobalVar(0,0);      //用全局变量0来做趋势的指标,1为向上,0为中立,-1为向下
  41.    SetGlobalVar(1,0);      //用全局变量1来表示高点
  42.    SetGlobalVar(2,0);      //用全局变量2来表示低点
  43.    SetGlobalVar(3,0);      //用全局变量3来表示无持仓的高低点出现在当日第几根K线
  44.    SetGlobalVar(4,0);      //用全局变量4来表示孕线数
  45.    SetGlobalVar(5,0);      //用全局变量5来表示回撤激值点
  46.    SetGlobalVar(6,0);      //用全局变量6来表示r
  47.    FileAppend(sFileName, "\n 全局变量初始化");  
  48.    return;                 //当日的第一根K线,推出、不交易  
  49. }
  50.   
  51.   If(GetGlobalVar(0)==0)         
  52.   {
  53.     if (close[1] > open[1])
  54.     {  
  55.           SetGlobalVar(0,1);
  56.           SetGlobalVar(1,HD);
  57.           SetGlobalVar(2,LD);
  58.           SetGlobalVar(3,BST-1);
  59.           FileAppend(sFileName,"在第"+Text(BST-1)+"跟K线,确定最初看涨趋势");
  60.           return;
  61.     }
  62.         else if (close[1] < open[1])
  63.     {
  64.          SetGlobalVar(0,-1);
  65.          SetGlobalVar(1,HD);
  66.          SetGlobalVar(2,LD);
  67.          SetGlobalVar(3,BST-1);
  68.          FileAppend(sFileName,"在第"+Text(BST-1)+"跟K线,确定最初看跌趋势");
  69.      return;
  70.         }
  71.         else return;
  72.   }
  73.   
  74.   
  75.   //四种出现新高新低的新情况
  76.   If(GetGlobalVar(0)==1 And High[1]>GetGlobalVar(1) And MarketPosition==0)   
  77.   {
  78.         SetGlobalVar(1,High[1]);
  79.         SetGlobalVar(4,0);
  80.         SetGlobalVar(5,0);
  81.         FileAppend(sFileName,"在上一根K线,有新高点产生,看涨倾向不变。");
  82.   }
  83.   
  84.   If(BST==4) FileAppend(sFileName,"看看第四个K线到不到这【1】"+Text(Low[1])+"  "+Text(GetGlobalVar(2))+"  "+Text(GetGlobalVar(0)));
  85.   
  86.   If(GetGlobalVar(0)==1 And Low[1]<GetGlobalVar(2) )
  87.   {
  88.     If(BST==4) FileAppend(sFileName,"看看第四个K线进不进来");
  89.         SetGlobalVar(0,-1);
  90.         SetGlobalVar(2,Low[1]);
  91.         SetGlobalVar(4,0);
  92.         SetGlobalVar(5,0);
  93.         FileAppend(sFileName,"在上一根K线,有新低点产生,由看涨倾向变成看跌倾向。");
  94.   }
  95.   If(GetGlobalVar(0)==-1 And Low[1]<GetGlobalVar(2) And MarketPosition==0)
  96.   {
  97.     SetGlobalVar(2,Low[1]);
  98.         SetGlobalVar(4,0);
  99.         SetGlobalVar(5,0);
  100.         FileAppend(sFileName,"在上一根K线,有新低点产生,看跌倾向不变。");
  101.   }
  102.    If(GetGlobalVar(0)==-1 And High[1]>GetGlobalVar(1) )
  103.   {
  104.     SetGlobalVar(0,1);
  105.         SetGlobalVar(1,High[1]);
  106.         SetGlobalVar(4,0);
  107.         SetGlobalVar(5,0);
  108.         FileAppend(sFileName,"在上一根K线,有新高点产生,由看跌倾向变成看涨倾向。");
  109.   }
  110.   
  111.   
  112.    If( MarketPosition==0)
  113.   {
  114.     If( High[1] < GetGlobalVar(1) And Low[1] >GetGlobalVar(2) )  //孕线
  115.    {
  116.      temp=GetGlobalVar(4)+1;
  117.          SetGlobalVar(4,temp);
  118.          FileAppend(sFileName,"上一根K线为孕线,此时孕线数为"+Text(GetGlobalVar(4)));
  119.    }
  120.    If(GetGlobalVar(0)==1 And High[1]<High[2] And Low[1]<Low[2])    //看涨时的回撤极值点
  121.    {
  122.      SetGlobalVar(5,Low[1]);
  123.          FileAppend(sFileName,"看涨倾向下有新回撤极值点");
  124.    }
  125.    If(GetGlobalVar(0)==-1 And High[1]>High[2] And Low[1]>Low[2])   //看跌时的回撤极值点
  126.    {
  127.      SetGlobalVar(5,High[1]);
  128.          FileAppend(sFileName,"看跌倾向下有新回撤极值点");
  129.    }
  130.   }
  131.   
  132.   
  133.   specialbuy = (GetGlobalVar(0)==1 And GetGlobalVar(4)==1 And BST==3 And High> GetGlobalVar(1) );         
  134.   specialsell= (GetGlobalVar(0)==-1 And GetGlobalVar(4)==1 And BST==3 And Low < GetGlobalVar(2) );
  135.   
  136.   buycon = ( GetGlobalVar(0)==1  And GetGlobalVar(4)>= 2 And High > GetGlobalVar(1));
  137.   sellcon= ( GetGlobalVar(0)==-1 And GetGlobalVar(4)>= 2 And Low < GetGlobalVar(2) );
  138.          
  139.   If((buycon || specialbuy) And MarketPosition==0)
  140.   {
  141.      temp=GetGlobalVar(1);
  142.          Buy(1,temp);
  143.          FileAppend(sFileName,"");
  144.   }  
  145.   
  146.   If((sellcon||specialsell) And MarketPosition==0)
  147.   {
  148.      temp=GetGlobalVar(2);
  149.      SellShort(1,temp);
  150.   }
  151.   If(GetGlobalVar(1) == 0) FileAppend(sFileName,"计算r时高点为0,异常!");
  152.   If(GetGlobalVar(2) == 0) FileAppend(sFileName,"计算r时低点为0,异常!");
  153.    
  154.   If(GetGlobalVar(5)==0)
  155.       r=GetGlobalVar(1)-GetGlobalVar(2);
  156.   Else If(GetGlobalVar(0)==1)
  157.       r=GetGlobalVar(1)-GetGlobalVar(5);
  158.   Else If(GetGlobalVar(0)==-1)
  159.       r=GetGlobalVar(5)-GetGlobalVar(2);
  160.   FileAppend(sFileName,"计算得出的r为"+Text(r));
  161.   
  162.   
  163.   //止损止盈部分
  164.   MyEntryPrice=AvgEntryPrice;
  165.   If(MarketPosition==1 And BarsSinceEntry>=1)
  166.   {
  167.     If(High>=MyEntryPrice + 2*r)
  168.     {
  169.            temp=MyEntryPrice+2*r;
  170.            If(Open>temp) temp=Open;
  171.            Sell(1,temp);
  172.            SetGlobalVar(4,0);
  173.            SetGlobalVar(1,HD);
  174.            SetGlobalVar(2,LD);
  175.         }Else If(Low<MyEntryPrice-r)
  176.         {
  177.            temp=MyEntryPrice-r;
  178.            If(Open<temp) temp=Open;
  179.            Sell(0,temp);
  180.            SetGlobalVar(1,HD);
  181.            SetGlobalVar(2,LD);
  182.            SetGlobalVar(4,0);
  183.         }
  184.   }Else If(MarketPosition==-1 And BarsSinceEntry>=1)
  185.   {
  186.      If(Low<MyEntryPrice-2*r)
  187.         {
  188.            temp=MyEntryPrice-2*r;
  189.            If(Open<temp) temp=Open;
  190.            BuyToCover(1,temp);
  191.            SetGlobalVar(1,HD);
  192.            SetGlobalVar(2,LD);
  193.            SetGlobalVar(4,0);
  194.         }Else If(High>MyEntryPrice+r)
  195.         {
  196.            temp=MyEntryPrice+r;
  197.            If(Open>temp) temp=Open;
  198.            BuyToCover(1,temp);
  199.            SetGlobalVar(1,HD);
  200.            SetGlobalVar(2,LD);
  201.            SetGlobalVar(4,0);
  202.         }
  203.    }
  204.    
  205.    //尾盘平仓
  206.    If((Date[-1] != InvalidInteger && Date != Date[-1]) || (Date[-1]==InvalidInteger && Date<CurrentDate))  
  207.    {
  208.      Sell(1,Close);
  209.          BuyToCover(1,Close);
  210.    }         
  211.          
  212. end
复制代码



确实没钱了,求施舍论坛币- -   ,觉得有用的话,施舍一二。嘿嘿



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:交易策略 日内交易 期货交易 filename position 期货交易

已有 1 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
fantuanxiaot + 10 + 46 + 1 + 1 + 1 精彩帖子

总评分: 经验 + 10  论坛币 + 46  学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

本帖被以下文库推荐

fantuanxiaot 发表于 2015-3-15 17:47:34 |显示全部楼层 |坛友微信交流群
不错!欢迎分享
已有 1 人评分经验 论坛币 收起 理由
jerker + 5 + 5 精彩帖子

总评分: 经验 + 5  论坛币 + 5   查看全部评分

使用道具

wusetu 发表于 2015-3-15 21:25:42 |显示全部楼层 |坛友微信交流群
不错!欢迎分享

使用道具

r3xn9 发表于 2015-3-15 21:47:37 |显示全部楼层 |坛友微信交流群
谢谢楼主分享

使用道具

szy56801 在职认证  发表于 2015-3-15 22:04:48 |显示全部楼层 |坛友微信交流群
kankan   谢谢!!!

使用道具

ABOLUOV 发表于 2015-3-15 22:13:06 |显示全部楼层 |坛友微信交流群

使用道具

宜士洁 企业认证  发表于 2015-3-15 23:26:39 |显示全部楼层 |坛友微信交流群
谢谢              

使用道具

fengyg 企业认证  发表于 2015-3-16 08:25:04 |显示全部楼层 |坛友微信交流群
kankan

使用道具

jgw1213 发表于 2015-3-16 08:26:00 |显示全部楼层 |坛友微信交流群
学习一下      

使用道具

kw251 发表于 2015-3-16 09:30:20 |显示全部楼层 |坛友微信交流群
看看

使用道具

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

本版微信群
加好友,备注jr
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 00:37