json - 交易查看警报中的 JSON 浮动
问题描述
我正在构建一个自动止损机制,将 pinescript JSON 警报发送到烧瓶,然后再发送到另一个应用程序。该机器人将设置止损水平,我可以获取完整的 JSON 消息,但我遇到了一些问题,我似乎无法将浮点变量中的变量插入 JSON 警报。pinescript 中的错误有点令人困惑,因为它说期望浮点数而不是字符串。但在 PS 脚本中,变量只是“永远”一个浮点数。“不能用'expr1'=string调用'operator +'。参数的类型应该是:series[float]” 接下来我尝试将float转换为字符串,然后将其插入JSON脚本。这似乎从变量中读取了正确的价格水平,但现在的问题是经纪人期望浮动而不是字符串并拒绝订单。所以它有点像石头和坚硬的地方。如果可能的话,我想避免将字符串转换回接收服务器上的浮点数。(float-->string-->float) 我怀疑我的语法错误或者我需要使用其他方法。任何人都可以帮忙吗?谢谢
var symbol = syminfo.tickerid
var trailPrice = 0.00
t_trailPrice = float(variation -spread)
var avPrefix = "e=alpacapaper " + " s=" + symbol
//IBK Message
if (barstate.islast)
if (t_trailPrice > trailPrice or trailPrice == 0.00) and barstate.isconfirmed
trailPrice := t_trailPrice
alert('{"ticker": "' + syminfo.ticker + '", "strategy": {"order_action": "buy", "order_contracts": 144.66, "order_price": "' + t_trailPrice + '"}}', freq=alert.freq_once_per_bar_close)
解决方案
对于版本 5,tostring() 已更改为 str。命名空间。要将 float 或 int 更改为字符串,您现在可以使用 str.tostring() 函数。例如。
+ str.tostring(t_trailPrice) + etc.
干杯我的朋友
编辑
我看到您有一组额外的引文可能会导致您的问题。注意你的字典的构造。并将警报发送到您的电子邮件以验证它们的呈现方式。此处的代码将 trailprice 呈现为浮点数。
//IBK Message
if (barstate.islast)
if (t_trailPrice > trailPrice or trailPrice == 0.00) and barstate.isconfirmed
trailPrice := t_trailPrice
alert('{"ticker": "' + syminfo.ticker + '", "strategy": {"order_action": "buy", "order_contracts": 144.66, "order_price": ' + str.tostring(t_trailPrice) + '}}', freq=alert.freq_once_per_bar_close)
干杯和好运
推荐阅读
- php - 如何从 youtube 频道 html 获取实时视频 ID
- python-3.x - 旧会话 ID 不可用
- php - mysql触发器或事件在一段时间(60秒)后执行更新
- java - 为什么 ArrayList 总是返回最后一个对象?
- visual-studio-code - 将行带到当前行 - VSCode 快捷方式
- bash - 构建连接多个源路径并转换为 Cygwin RSync 执行以复制特定硬链接文件夹树的干净方法?
- oracle - 如何使用输入和输出参数pl/sql获取存储过程的输出
- html - 位置粘性在引导程序 3 中不起作用
- python - 将文件保存到带有嵌套循环索引的pickel作为文件名
- json - 如何在 JSON+LD 头中使用许多不同的数据文件更改 forloop 目标,包括