新手入门-编写第一个交易指令
本帖最后由 白吉馍 于 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.选择菜单"程序化"->“策略监控",打开如下图所示的面板。可以查看交易指令的运行情况
{:soso__15446190211403787529_3:} 学习 程序化 是个好路子 要习惯不发短信,少打电话的生活。
让我们和财富一起成长!!!
请问楼主这些指令是文华财经还是易盛。{:soso_e181:} 学习 这是易盛的ETL语言
易盛的程序化我测过一次,感觉不错。。。。 有一个问题:1分钟有60秒,如何实现只有第59秒的价格触发才自动下单,前面58秒中任何一个价格触发都不自动下单;这样避免穿刺价格对自动下单的反复触发。 满盘红 发表于 2012-5-21 18:13 static/image/common/back.gif
有一个问题:1分钟有60秒,如何实现只有第59秒的价格触发才自动下单,前面58秒中任何一个价格触发都不自动下 ...
if(MinuteFromDateTime(CurrentTime) ==59)
{
......
}
感谢 白老师~顶一下。 你可以不相信爱情,但是不可以不相信爱。
弓虽!弓虽!弓虽!弓虽!弓虽!弓虽!
先顶后看. 本帖最后由 cashrobot 于 2012-8-29 11:09 编辑
按照楼主的指导试了试,但不知道如何停止程序化交易,也不知道如何换周期。请再指导一下。
本帖最后由 cashrobot 于 2012-8-29 12:46 编辑
还有:
如何用同一交易系统对同一合约的不同周期同时进行交易?
如何用同一交易系统对不同合约不同周期同时进行交易?
如何用不同交易系统对同一合约同一周期同时进行交易?
如何用不同交易系统对不同合约同时进行交易?
如何停止多个交易系统之中的某一个系统的自动交易?
如何同时停止全部自动交易?
烦请楼主做个系统化的新手入门,谢谢!
对医生最大的疑惑就是问题无人搭理,{:soso_e110:} 好帖子,新手必看,谢谢 顶顶顶。。白老师是个大牛人 {:soso_e128:}