在特定月份的某一天平仓
Close position on specifc month day
我正在使用 quantstrat 在 R 中编写策略,需要在每个月的第 15 天关闭任何未平仓头寸。
我已经尝试过将 add.signal
与 sigTimespan
一起使用,但它似乎只适用于时间,而不适用于日期。也许我没有将正确的数据格式传递给它的 timespan
参数。它要求一个基于 POSIXct 的对象,所以我这样写:
add.signal(strategy = strategy,
name = 'sigTimestamp',
arguments = list(timestamp = as.POSIXct('2016-11-15 17:00:00'))
label = 'timestamp')
... 它不起作用。即使是这样,该信号也仅对平仓该月的头寸有用。
一个可能的解决方案是使用 delay
或 timespan
参数在开仓的同一时间下一个延迟订单来平仓,但我也无法做到这行得通。这是我尝试过的:
add.rule(strategy = strategy, name = 'ruleSignal', arguments =
list(sigcol = 'long',
sigval = TRUE,
orderqty = 'all',
ordertype = 'market',
orderside = 'long',
replace = FALSE,
prefer = preferredPrice,
timestamp = as.POSIXct('2016-11-15 17:00:00')),
type = 'exit', label = 'Timestamp Position Close')
有什么想法吗?
我是 运行 R 3.3.2 和 quantstrat 0.9.1739 在 Ubuntu 16.04.1 LTS 下,有 5 分钟的数据。
我创建了一个函数,可以在特定时间戳生成交易信号,并在调用 quantstrat 的 applyStrategy
函数之前将其应用于我的 OHLC 数据。该信号与退出规则一起起到了作用。
我正在使用 quantstrat 在 R 中编写策略,需要在每个月的第 15 天关闭任何未平仓头寸。
我已经尝试过将 add.signal
与 sigTimespan
一起使用,但它似乎只适用于时间,而不适用于日期。也许我没有将正确的数据格式传递给它的 timespan
参数。它要求一个基于 POSIXct 的对象,所以我这样写:
add.signal(strategy = strategy,
name = 'sigTimestamp',
arguments = list(timestamp = as.POSIXct('2016-11-15 17:00:00'))
label = 'timestamp')
... 它不起作用。即使是这样,该信号也仅对平仓该月的头寸有用。
一个可能的解决方案是使用 delay
或 timespan
参数在开仓的同一时间下一个延迟订单来平仓,但我也无法做到这行得通。这是我尝试过的:
add.rule(strategy = strategy, name = 'ruleSignal', arguments =
list(sigcol = 'long',
sigval = TRUE,
orderqty = 'all',
ordertype = 'market',
orderside = 'long',
replace = FALSE,
prefer = preferredPrice,
timestamp = as.POSIXct('2016-11-15 17:00:00')),
type = 'exit', label = 'Timestamp Position Close')
有什么想法吗?
我是 运行 R 3.3.2 和 quantstrat 0.9.1739 在 Ubuntu 16.04.1 LTS 下,有 5 分钟的数据。
我创建了一个函数,可以在特定时间戳生成交易信号,并在调用 quantstrat 的 applyStrategy
函数之前将其应用于我的 OHLC 数据。该信号与退出规则一起起到了作用。