Pine script 获取错误“;传递值为0.000000“;当通过某些交易对的浮动小于1时

Pine script 获取错误“;传递值为0.000000“;当通过某些交易对的浮动小于1时,pine-script,Pine Script,我在pine脚本中有以下代码: strategy.entry(“REV”,strategy.long,comment=“REV”,qty=0.9) 在FTX交易所的股票代码SHITPERP上运行它会出现以下错误: 条目或订单的数量必须是小于或等于1000000000.000000的正数,传递值为0.000000 quantity值似乎被四舍五入为零。如果我将其改为1.9,则它可以工作,但得到的位置大小为1 这些订单在交易所本身工作正常,没有向下舍入到最接近的整数 在使用strategy.entr

我在pine脚本中有以下代码:

strategy.entry(“REV”,strategy.long,comment=“REV”,qty=0.9)

在FTX交易所的股票代码SHITPERP上运行它会出现以下错误:

条目或订单的数量必须是小于或等于1000000000.000000的正数,传递值为0.000000

quantity
值似乎被四舍五入为零。如果我将其改为1.9,则它可以工作,但得到的位置大小为1

这些订单在交易所本身工作正常,没有向下舍入到最接近的整数

在使用strategy.entry或strategy.order时,是否有某种最小订单大小限制?是否有一个变量我可以检查或计算,以使这样的订单不会抛出错误?我在不同资产上使用各种脚本时遇到了这个问题

我还检查了
syminfo.mintick
syminfo.pointvalue
是否有线索,它们分别为0.1和1

我唯一能想到的可能是某种货币转换,但我没有在策略上设置货币,资产的基本对是美元稳定币。即使我将货币设置为美元,同样的问题也会发生


如果您能提供任何帮助,我们将不胜感激。

在交易视图聊天中从@Pinecoders获得了答案。似乎资产有一个阶跃值,而对于像
SHITPERP
这样的资产,它还没有定义。在这种情况下,它默认为1,这意味着部分订单将向下舍入到最接近的整数。

从@Pi获得了答案交易视图聊天中的necoders。似乎有一个资产的阶跃值,对于某些资产,如
SHITPERP
,它还没有定义。在这种情况下,它默认为1,这意味着部分订单将向下舍入到最接近的整数。

谢谢您的回答! 自从他们升级到Pine 4.0以来,这个错误一直困扰着我 现在我知道在哪里修复它了:)

简单的解决方案;放置一些if来检查变量是否小于1,然后为其指定1

unit_size = ( result of position size calculation )

if (unit_size < 1)
    unit_size := 1

strategy.entry("REV", strategy.long, comment="REV", qty=unit_size)
单位大小=(位置大小计算结果)
如果(单位尺寸小于1)
单位大小:=1
策略条目(“REV”,strategy.long,comment=“REV”,数量=单位大小)
或者您可以将unit_size更改为-1 so,并使用“if”在strategy.entry命令之前进行检查

if (unit_size < 1)
    unit_size := -1
if (unit_size > 0 )
    strategy.entry("REV", strategy.long, comment="REV", qty=unit_size)
if(单位大小<1)
单位大小:=-1
如果(单位大小>0)
策略条目(“REV”,strategy.long,comment=“REV”,数量=单位大小)
避免仓位规模超过初始资本。

谢谢您的回答! 自从他们升级到Pine 4.0以来,这个错误一直困扰着我 现在我知道在哪里修复它了:)

简单的解决方案;放置一些if来检查变量是否小于1,然后为其指定1

unit_size = ( result of position size calculation )

if (unit_size < 1)
    unit_size := 1

strategy.entry("REV", strategy.long, comment="REV", qty=unit_size)
单位大小=(位置大小计算结果)
如果(单位尺寸小于1)
单位大小:=1
策略条目(“REV”,strategy.long,comment=“REV”,数量=单位大小)
或者您可以将unit_size更改为-1 so,并使用“if”在strategy.entry命令之前进行检查

if (unit_size < 1)
    unit_size := -1
if (unit_size > 0 )
    strategy.entry("REV", strategy.long, comment="REV", qty=unit_size)
if(单位大小<1)
单位大小:=-1
如果(单位大小>0)
策略条目(“REV”,strategy.long,comment=“REV”,数量=单位大小)
避免仓位规模超过初始资本