2个问题 [MC]
-
MC用户求助:
第一个问题:
vMP=marketposition;
if vMP[1]=0 and vMP=1 then
var1=lowest(L,3);
当持仓有空仓变为实仓的时候,取此时3根bar的 最低点。 这个代码有个问题是,当持仓平掉后,VAR1仍然会取到,我想 要的是 持仓变为零时,VAR1 返回值 为空值,请问这个怎么改进呢?
2、我想取到开仓后到 所有持仓平掉的过程中的盈亏。比如 开仓 1 再加仓 2手, 减 2手,等等 (1+2-2+2-2。。。)之前用PosTradeProfit 不行,QQ群老师得写个代码,让我在论坛发帖,麻烦大神给写一个.
-
MC回复讨论一:
第三个问题,我是从采用bar内交易,我想限制单个BAR 开仓和平仓的信号 数,这个代码怎么写呢
-
MC回复讨论二:
回复第一个问题:
vMP=marketposition;
if vMP[1]=0 and vMP=1 then
var1=lowest(L,3)
else if vmp=0 then
var1=0;
MC中的变量有一个特点,比如,当变量var1在编号为10的bar上被赋值为20时,若在后续不再重新赋值给var1时,那么var1在编号为11、12及后续所有的bar上取的值都是20,所以,当您不再使用var1变量时(并且该变量的值会对后续有影响时),需要将变量var1重新赋值一下。
-
MC回复讨论三:
回复您的第二个问题:
您的问题涉及两个点:1.判断加仓减仓平仓操作;2.计算当前未平仓部位的盈亏1.var: mp(0);
mp=marketposition*currentcontracts;
{mp=-2时,表示当前空仓2手;当mp=5时,表示当前多仓5手,通过对比mp[1]与mp是否相等来判断加减仓平仓操作}
2.当前未平仓部位的盈亏主要由两个部位组成,一个是平仓盈亏(使用关键字positionprofit),另一个是未平仓盈亏(openpositionprofit)。可以使用如下代码:
var: pf(0);
pf=positionprofit+openpositionprofit;
3.基于以上两点,代码如下:
var: mp(0),pf(0);
mp=marketposition*currentcontracts;
if mp<>mp[1] then
pf=positionprofit+openpositionprofit;
print("2 ",positionprofit+openpositionprofit-pf); //输出基于当根bar的收盘价计算的当前未平仓部位盈亏与pf的差。
-
MC回复讨论四:
回复您的第二个问题:
您的问题涉及两个点:1.判断加仓减仓平仓操作;2.计算当前未平仓部位的盈亏1.var: mp(0);
mp=marketposition*currentcontracts;
{mp=-2时,表示当前空仓2手;当mp=5时,表示当前多仓5手,通过对比mp[1]与mp是否相等来判断加减仓平仓操作}
2.当前未平仓部位的盈亏主要由两个部位组成,一个是平仓盈亏(使用关键字positionprofit),另一个是未平仓盈亏(openpositionprofit)。可以使用如下代码:
var: pf(0);
pf=positionprofit+openpositionprofit;
3.基于以上两点,代码如下:
var: mp(0),pf(0);
mp=marketposition*currentcontracts;
if mp<>mp[1] then
pf=positionprofit+openpositionprofit;
print("2 ",positionprofit+openpositionprofit-pf); //输出基于当根bar的收盘价计算的当前未平仓部位盈亏与pf的差。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容