策略无法平仓的问题

简单写了一个自动平仓策略,计划手动开仓后打开自动交易平仓。所以策略里面没有开仓信号,只有平仓信号。但实践后发现平仓信号无法触发,想问下哪个地方出现了问题。
 


Params
    Numeric FastLength(12);
    Numeric SlowLength(26);
    Numeric MACDLength(9);
Vars
    Numeric fast;
    Numeric slow;
    Numeric MACDValue;
    Bool con1;
    Bool con2;

    
    
Events
    OnBar(ArrayRef<Integer> indexs)
    {
        Range[DataSourceSize() - 1]
        {
            fast = XAverage( Close, FastLength ) - XAverage( Close, SlowLength ) ;    
            slow = XAverage(fast,MACDLength);
            MACDValue = fast - slow;
            con1 = CrossOver(fast[1], slow[1])
            con2 = CrossUnder(fast[1], slow[1])
            
            If(con1 and marketposition==-1)
            {
                buytoCover(0, max(open, close)); //金叉平空
            }
            If(con2 and marketposition== 1)
            {
                sell(0,  min(open, close)); //死叉平多
            }

            
        }
    }

 

 

关于套利策略的平仓问题
交易师无法平仓
分次平仓无法执行
如何用A函数完美解决加仓策略的平仓问题
麻烦管理员帮我看看为何一直使用的公式突然无法平仓
期权无法平仓,Q_AskPrice无法获取正确价格
关于平仓的问题
主力合约切换后无法平仓怎么解决?
策略回测报告无法加载齐全策略单元问题
请问手动开的仓是不是策略无法获取到entryprise

if(A_BuyPosition > 0 && con2 )

{

PlotString();//图表做平仓标记

A_Sell

}

大概这个意思

这个简单啊

你本来就是手工开仓 涉及到账户

自动平仓策略当然用账户函数

con1 = CrossOver(fast[1], slow[1])
con2 = CrossUnder(fast[1], slow[1])

只是触发条件而已

第一 图上如果没有开仓信号,就不可能出现平仓信号。永远是现有开仓,再有平仓。

你手动开的仓如果不在图上同步用buy命令标记出一个信号,那就出现不了平仓信号

可以自动识别开仓价吗?

可以识别账户持仓里的持仓均价。但是你如果仔细思考过就会发现没什么意义