pine-script - 在 strategy.entry() 中使用 Pine-Script timestamp() 函数时遇到问题
问题描述
我正在尝试在特定日期/时间创建交易,但由于某种原因,交易创建晚了 1 小时。本来应该是18:00进的,现在是19:00进的
在下面的示例代码中,使用与我在 stretegy.entry 和 exit 代码中使用的完全相同的时间戳格式,label.new 在指定时间 2021 年 8 月 5 日 03:00:00 UTC-7 正确创建但策略.entry 创建晚了 1 小时。有谁知道为什么会发生这种情况?我知道我可以通过将时间设置为 UTC-6 来“解决”这个问题,但这当然只是一个小技巧:[这是显示我的问题的屏幕截图,正如您在策略摘要中看到的那样,输入错误在 19:00 而不是 18:00 添加] 1
//@version=4
strategy("My Script", currency=currency.USD, max_boxes_count = 500, max_lines_count = 500,pyramiding = 100, overlay=true)
entryTime = timestamp("05 Aug 2021 18:00:00 UTC-7")
strategy.entry(id="Long", long=strategy.long, when=(time == entryTime))
strategy.exit(id="Long Exit", from_entry="Long", limit=110.076, stop=109.676, when=(time == entryTime))
entryTime := timestamp("05 Aug 2021 03:00:00 UTC-7")
if (time == entryTime)
labeltext = tostring(entryTime)
label.new(bar_index, high, text = "05 Aug 2021 03:00:00 UTC-7")
解决方案
label.new
功能在满足条件后立即绘制标签。strategy.entry()
函数的工作方式不同[1]:
默认情况下,在每根柱线收盘时计算一次策略。在该计算期间,该策略能够生成新订单或更新现有订单。但是当柱线已经收盘时,它就不能再交易了,因此策略订单最早可以被执行的时刻是在下一根柱线的开盘时。因此,默认情况下,该策略将在满足入场条件后一柱开仓。
推荐阅读
- sql - SQL Server - 是否创建具有唯一约束的索引作为必要的列之一?
- github - 我怎样才能制作这样的 README 结构?
- python - Python - 为什么 a=1/3 是 int 而 a=0.3 是 float
- r - 如何计算变量超过其阈值的次数。忽略连续事件
- powershell - 如何为 PowerShell 安装 GroupPolicy 模块?
- ionic-framework - Ionic 4 在目录中创建项目
- php - php7 打印 html 表格(条形码)到网络打印机
- python - 为什么 stderr 打印晚于 stdout?
- asp.net - 嵌套asp:ListView时数据表不起作用?
- php - 在多个 PHP 脚本中使用数据库类