【问题标题】:Check if in a specific position检查是否在特定位置
【发布时间】:2018-12-29 01:52:06
【问题描述】:

这将解决我遇到的一个更复杂的问题。

我的代码中有两行:

strategy.entry(id = "Long", long = true, when = upAllConditions, stop = upStopLoss)
strategy.entry(id = "Short", long = true, when = upAllConditions, stop = upStopLoss)

我似乎不知道如何检查我是否处于这些职位之一。

如果我处于“多头”头寸,我不想做空,如果我处于“空头”头寸,我不想做多。

(更复杂的问题是我实际上想根据我所处的位置使用不同的止损值,因此需要检查。似乎这是一种更简单的询问方式)

【问题讨论】:

    标签: pine-script


    【解决方案1】:

    使用内置变量strategy.position_size

    当前市场头寸的方向和规模。如果该值 > 0,则市场头寸是多头。如果该值

    【讨论】:

    【解决方案2】:

    我认为,您应该通过以下方式将职位的状态通过历史记录:

    IN_SHORT = 1
    IN_LONG = 2
    NONE = 3
    
    status = NONE
    status := nz(status[1], NONE)
    
    if status != IN_SHORT and upAllConditions
        strategy.entry(id = "Long", long = true, when = upAllConditions, stop = upStopLoss)
        status = IN_LONG
    

    【讨论】:

    • 如果您的意思是在策略中使用这种方法,它应该可以工作。或者你的意思是它会在指标中起作用吗?
    猜你喜欢
    • 1970-01-01
    • 2015-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-04
    相关资源
    最近更新 更多