首页 > 解决方案 > strategy.entry 多个买单

问题描述

我,我想在 pinescript 中创建一个简单的策略,如下所示: 脚本在 100 处交易。现在我想在每下跌 1 点后买入,即 99、98、97、96、95,并在每上涨 1 点后卖出。无需止损。我对编码/编程完全陌生。我一直在 pinescript 中尝试这样的事情。

strategy("My Strategy", overlay=true, default_qty_value =15)
start = timestamp (2021,7,1)
base = 3300 
b1 = crossunder(close, base *0.99)
b2 = crossunder(close, base *0.98) 
b3 = crossunder(close, base *0.97) 
b4 = crossunder(close, base *0.96) 
b5 = crossunder(close, base *0.95) 
b6 = crossunder(close, base *0.94) 
b7 = crossunder(close, base *0.93) 
b8 = crossunder(close, base *0.92) 
b9 = crossunder(close, base *0.91) 

if time >= start
    strategy.long("buy", true, when = b1)
    strategy.exit("exit", "buy", profit = 1000)
    strategy.entry("buy1",true, when = b2)
    strategy.exit("exit", "buy1", profit = 1000)

我有两个问题

  1. 如果价格跌至 95,然后高于 100,则靠背应显示所有 5 笔交易,即在 99,98,97,96,95 买入交易,在 96,97,98,99,100 卖出交易。如果我使用 strategy.entry,则回测结果只有一个顺序
  2. 我想在价格触及 99 时买入,所以我相信如果我尝试这是任何时间框架,执行的交易应该保持不变..但这也会随着不同的时间框架而变化。

如果我的查询不清楚,请原谅我。只是想知道是否有人可以帮助我在这方面哪里出错了。

标签: pine-scripttradingview-api

解决方案


我想我有点用“strategy.opentrades”来管理它

if strategy.opentrades ==0 and (b1) and time >= start
strategy.order("b1", true)
strategy.exit("exit", "b1", profit = XXX)

我得到了我想要的结果。谢谢


推荐阅读