Dre*_*vid 3 trading algorithmic-trading pine-script
我正在修改策略,仅在达到一定数量的蜡烛后退出交易。
我输入了timeframe(在脚本的输入部分)并在底部设置了退出规则(barssince) - 它在很多时候都在工作,但有些交易仍然会更快结束。无法弄清楚是什么原因造成的。
还需要做什么才能仅在指定的柱数上退出交易?
这是脚本:https: //pastebin.com/8HQyJxa0(已更新)
似乎当设置较长的到期时间时,上涨交易会过早地结束下跌交易,反之亦然。我确实需要两个交易能够同时运行,仅在达到指定的柱数后才平仓timeframe
更新:显然使用strategy.position_size <= 0指定没有股票或借入可以避免它关闭我当前的未平仓头寸 - 但不确定这如何适合当前的脚本。
使用的问题strategy.opentrades == 0在于它不考虑新交易。因此,如果您先做多头订单,然后再做空头订单,则计数不会重新开始,因为未平仓交易的数量是相同的,并且计数将保持与多头订单相同。
这就是为什么我喜欢使用strategy.position_size,因为它基于头寸的数量。因此,如果数量发生变化,要么是因为一个仓位被平仓(因此跌至 0),要么是因为开立了一个新仓位。因此,我必须向 bar 变量添加 1,但它有效。
opened_order = strategy.position_size[0] != strategy.position_size[1] and strategy.position_size[0] != 0
bars = barssince(opened_order) + 1
strategy.close_all(when=(bars>=timeframe))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3727 次 |
| 最近记录: |