查看: 19030|回复: 47
打印 上一主题 下一主题

新手入门-编写第一个交易指令

  [复制链接]
跳转到指定楼层
1
发表于 2012-5-14 15:06:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 白吉馍 于 2012-5-14 15:13 编辑



  • 选择菜单“程序化”->“新建公式”,打开如下图所示界面,在描述中填写相关信息,点击确定按钮

2.在打开的公式编辑器中键入如下代码:
Params   
     Numeric M(10);
     Numeric N(20);
GlobalVars
     Numeric lastOpenPrice(0);
Vars  
     NumericSeries MA1;
     NumericSeries MA2;
     Bool Con;
Begin
     MA1 = Average(Close,M); //求M周期收盘价均线
     MA2 = Average(Close,N); //求N周期收盘价均线

     PlotNumeric("MA1",MA1);  //绘制均线MA1
     PlotNumeric("MA2",MA2);  //绘制均线MA2

     Con = CrossOver(MA1,MA2);  //判断MA1是否上穿MA2

     if(A_BuyPosition ==0) //判断当前是否有多仓
     {
          if(Con)  //如果MA1上穿MA2,开多仓
         {
                 Buy(1,Q_AskPrice);       //以申卖价买入1手
                 lastOpenPrice = Q_AskPrice;  //将开仓价格记录下来,以便将来判断是否平仓
          }
     }
     Else
     {
               //如果当前持多仓,判断是否平仓
                if(Close-lastOpenPrice >= 20) //如果价格涨了20以上,止赢平仓
               {
                       Sell(0,Q_BidPrice);
               }
               Else if(lastOpenPrice-Close<=-5) //如果价格跌了5以上,止损平仓
               {
                      Sell(0,Q_BidPrice);
                }
       }
End
3.按F8编译公式,结果如下图所示


4.若编译成功,客户端的交易指令列表中就会出现一个新的交易指令,如下图

5.选择一个K线图,双击刚刚编写的交易指令,就可以把这个交易指令加载到K线图上运行了。效果如下图:

6.选择菜单"程序化"->“策略监控",打开如下图所示的面板。可以查看交易指令的运行情况




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册入住  

x





2
发表于 2012-5-14 15:28:06 | 只看该作者
{:soso__15446190211403787529_3:}

评分

1

查看全部评分

3
发表于 2012-5-14 15:38:57 | 只看该作者
学习
4
发表于 2012-5-14 16:18:02 | 只看该作者
程序化 是个好路子
5
发表于 2012-5-14 16:57:39 | 只看该作者
要习惯不发短信,少打电话的生活。

让我们和财富一起成长!!!
6
发表于 2012-5-14 18:58:08 | 只看该作者
请问楼主这些指令  是文华财经  还是易盛。{:soso_e181:}

点评

显然这里是易盛,文华财经能做到这样么...  发表于 2012-5-23 12:51
7
发表于 2012-5-14 20:31:58 | 只看该作者
学习
8
 楼主| 发表于 2012-5-15 10:15:54 | 只看该作者
这是易盛的ETL语言
9
发表于 2012-5-15 12:31:25 | 只看该作者
易盛的程序化我测过一次,感觉不错。。。。
10
发表于 2012-5-21 18:13:09 | 只看该作者
有一个问题:1分钟有60秒,如何实现只有第59秒的价格触发才自动下单,前面58秒中任何一个价格触发都不自动下单;这样避免穿刺价格对自动下单的反复触发。
11
 楼主| 发表于 2012-5-22 10:19:19 | 只看该作者
满盘红 发表于 2012-5-21 18:13
有一个问题:1分钟有60秒,如何实现只有第59秒的价格触发才自动下单,前面58秒中任何一个价格触发都不自动下 ...

if(MinuteFromDateTime(CurrentTime) ==59)
{
     ......
}

点评

额的神啊 这个也可以实现 程序化太强大 漫山遍野都是狼 哪里还有羊吃啊  发表于 2012-5-22 21:24
12
发表于 2012-6-3 10:35:08 | 只看该作者
感谢 白老师~  顶一下。
13
发表于 2012-6-8 20:54:58 | 只看该作者
你可以不相信爱情,但是不可以不相信爱。

弓虽!弓虽!弓虽!弓虽!弓虽!弓虽!
14
发表于 2012-8-25 12:27:39 | 只看该作者
先顶后看.
15
发表于 2012-8-29 11:06:11 | 只看该作者
本帖最后由 cashrobot 于 2012-8-29 11:09 编辑

按照楼主的指导试了试,但不知道如何停止程序化交易,也不知道如何换周期。请再指导一下。

16
发表于 2012-8-29 12:39:39 | 只看该作者
本帖最后由 cashrobot 于 2012-8-29 12:46 编辑

还有:
如何用同一交易系统对同一合约的不同周期同时进行交易?
如何用同一交易系统对不同合约不同周期同时进行交易?
如何用不同交易系统对同一合约同一周期同时进行交易?
如何用不同交易系统对不同合约同时进行交易?
如何停止多个交易系统之中的某一个系统的自动交易?
如何同时停止全部自动交易?
烦请楼主做个系统化的新手入门,谢谢!

17
发表于 2012-8-31 07:43:52 | 只看该作者
对医生最大的疑惑就是问题无人搭理,{:soso_e110:}
18
发表于 2012-9-2 00:49:20 | 只看该作者
好帖子,新手必看,谢谢
19
发表于 2012-9-4 16:44:40 | 只看该作者
顶顶顶。。白老师是个大牛人
20
发表于 2012-9-4 23:21:44 | 只看该作者
{:soso_e128:}
您需要登录后才可以回帖 登录 | 注册入住  

本版积分规则

易家网  ©2015-2023  郑州期米信息技术有限公司版权所有  豫公网安备 41010502005136号 豫ICP备16010300号