gpt4 book ai didi

r - Quantstrat 添加规则参数 : orderqty vs tradeSize vs maxSize

转载 作者:行者123 更新时间:2023-12-04 10:10:05 29 4
gpt4 key购买 nike

我在 Quantstrat 文档中找不到 add.rule 参数的定义。我很想知道 orderqtytradeSizema​​xSize 之间的区别。

quantstrattrader上找到了以下相关资料:

orderqty 参数仅在未指定 osFUN 时适用。它可以采用固定值(例如 1、2),或者当规则类型为“退出”时,数量为“全部”,以平仓。

osFUN 指定要使用的订单大小函数。 osFUN 参数实际上是一个作为参数传入的函数对象。如果您不想使用 osFUN,只需使用固定数量,例如 100,或者如果使用退出类型订单,请使用“全部”平仓。

这是 add.rule 函数的样子:

 add.rule(strategy.st, name = "ruleSignal",
arguments = list(sigcol = "longsig",
sigval = TRUE,
ordertype = "market",
prefer = "Open",
orderside = "long",
orderqty = 100,
replace = FALSE,
osFUN = osMaxPos,
tradeSize = 100,
maxSize = 100),
type = "enter")

谢谢。

最佳答案

@blackknight316 是对的。查看 ruleSignal 的代码(打印 ruleSignal)。您会看到 tradeSizemaxSize 不存在正式参数。

然而 ruleSignal 函数在被调用时不会产生错误,因为它使用了省略号参数(即 ...)。在官方 R 语言文档中阅读有关此特殊参数的信息。

打印ruleSignal 并查看源代码。这是一部分:

orderqty <- osFUN(strategy = strategy, data = mktdata, 
timestamp = timestamp, orderqty = orderqty, ordertype = ordertype,
orderside = orderside, portfolio = portfolio,
symbol = symbol, ... = ..., ruletype = ruletype,
orderprice = as.numeric(orderprice))

它使用 ...(和 addOrder 一样)。

tradeSizemaxSize 包含在链接代码的 add.rule 中,可能是因为它们被传递给你链接的例子。请参阅参数 osFUN=osDollarATR,它实际上是一个对象,它是一个函数。 osDollarATR当然是作者自己定义的。您可能会在另一篇博文中找到该函数的定义,并看到 tradeSizemaxSize 是它的正式参数。

关于r - Quantstrat 添加规则参数 : orderqty vs tradeSize vs maxSize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44749047/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com