pine-script - 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)
我有两个问题
- 如果价格跌至 95,然后高于 100,则靠背应显示所有 5 笔交易,即在 99,98,97,96,95 买入交易,在 96,97,98,99,100 卖出交易。如果我使用 strategy.entry,则回测结果只有一个顺序
- 我想在价格触及 99 时买入,所以我相信如果我尝试这是任何时间框架,执行的交易应该保持不变..但这也会随着不同的时间框架而变化。
如果我的查询不清楚,请原谅我。只是想知道是否有人可以帮助我在这方面哪里出错了。
解决方案
我想我有点用“strategy.opentrades”来管理它
if strategy.opentrades ==0 and (b1) and time >= start
strategy.order("b1", true)
strategy.exit("exit", "b1", profit = XXX)
我得到了我想要的结果。谢谢
推荐阅读
- python - 检查文本文件的字典中是否已存在密钥
- c# - 如何以不同形式获取两个标签中的滚动条值
- botframework - 没有这样的主机是已知的-QnA Maker
- android - 例外:某些设备中的音频缓冲区大小无效
- c++ - 存储数据的对象和存储指向数据的智能指针的对象
- svg - 如何使 SVG 向左和向右拉伸,同时保持中间的纵横比?
- command-line - 如何使用 dotnet cli 获取包元数据?
- php - Laravel 5.8 php artisan migrate 抛出错误:Illuminate\Database\QueryException
- selenium-webdriver - 如果 div id 有重复,如何选择需要的 div id?
- oracle - 对象导航器上的更改顺序