- UID
- 2
- 积分
- 2874674
- 威望
- 1387366 布
- 龙e币
- 1487308 刀
- 在线时间
- 13156 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-11-24
|
FAQ之策略编程[MC]
咨询内容: Q1:MC编程语言是什么?哪里有学习资源?
A1:1、MC编程语言是PowerLanguage,和国际流行的easyLanguage 兼容度极高;2、学习easyLanguage,MC官网。
Q2:MC可以画趋势线吗?
A2:1、MC可以手动画趋势线,;2、MC也可以通过公式指标自动画趋势线,并基于趋势线建立交易策略。
Q3:MC怎样取到跨周期数据?
A3:1、在MC打开图表,插入商品。可对data2商品数据进行跨周期引用。2、跨周期引用数据,具体方法,参考论坛帖子,搜索“跨周期”。
Q4:i_OpenEquity 与 OpenPositionProfit 的区别?
A4:1、i_OpenEquity,所有交易的总盈亏;
2、OpenPositionProfit,当前部位的盈亏。
Q5:i_OpenEquity 和 netprofit的区别?
A5:i_openequity,包含浮动盈亏; netprofit,净利润,已实现的盈亏。
Q6: PivotHighVS(1,H,10,5,200);中的1和200代表什么意思?
A6:1是索引值,最近1个满足条件的PIVOT;200,在当前bar之前的200根bar的范围内寻找有没满足条件的PIVOT ;
10和5,最高价左边10根K线和最高价右边5根K线。
Q7:setbreakeven(500)的含义?
A7:盈利金额大于500块,则启动保本平仓。
Q8: intrabarpersist 的用法?
A8:
Intrabarpersist为变数的声明,
举例:
var:aa(0),intrabarpersist
bb(0);
aa= aa+1;bb=bb+1;print (“aa=”,aa);print (“bb=”,bb);aa会随着K线变化,bb会随着tick变化。
Q9:怎样开启bar内委托,满足条件就成交,而不是走到下根bar?
A9:2种方法:
1、在策略信号里申明:[IntrabarOrderGeneration= true];2、打开MC,插入信号,“设置指标”=》“设置”=》“bar内产生委托”,勾选“启用bar内委托”。
Q10:GVSetNamedDouble等 用法?
A10:1、GVSETNAMEDINT("aa",0);将名字为“aa”的变量设为0。
bb = GVGETNAMEDINT("aa",-9999),获得aa的值,若没有取到,返回-9999;
2、GVSetNamedDouble、GVSetNamedInt、GVGetNamedDouble、GVGetNamedInt。可用于跨图表传递数据, 但只能在即时行情中使用,不能用于历史回测;
Q11:当前K线到开仓所在K线的距离?
A11:barsinceentry。当前bar到开仓价的距离。
Q12:怎样按资金比例开仓?
A12:
(InitialCapital+netprofit)/margin
InitialCapital 是初始资金, netprofit 是净利润。Margin为保证金的金额,需要在QM->编辑商品,设定。
Q13:加载信号或指标,弹出“浮点运算错误”,怎样解决?
A13:
除数为0,有2种情况: 1、分母的变量,初始值为0。 2、策略运算时分母的计算值为0。
解决办法如下。
举例:公式中类似 z=y/x;的表达,改成:
If x<>0
then z=y/xelsez=0; |
论坛官方微信、群(期货热点、量化探讨、开户与绑定实盘)
|