问题标签 [quantstrat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
864 浏览

r - quantstrat addPosLimit() 在同一策略中做多和做空时不会限制我的头寸

当我有一个做多和做空的策略并且我将addPosLimit()功能设置为 havemaxpos=1 and minpos=-1时,它​​仍然需要一个多头和一个空头头寸。但如果我只做多或做空策略,它会按预期工作。

我为此示例创建了一个基本策略。它有 3 个移动平均线,一个长期 SMA 作为多头/空头偏差过滤器,两个短期 SMA 作为一个交叉向上做多,当有做多倾向时,一个交叉向下做空当有做空倾向。交易开始后,我有一个固定距离的利润目标和止损。

这是策略。

这是交易输出的样本。

在此处输入图像描述

我希望策略做多,然后达到利润目标或被止损,或者在给出空头信号时关闭订单,反之亦然。

如果我注释掉所有短边代码,它似乎可以按预期工作。以下是空方被注释掉时的交易示例。

我可以看到它在达到目标/停止之前不会再次交易。

0 投票
0 回答
46 浏览

r - 从循环到 Quantstrat

我想使用 quantstrat 构建一个简单的交易策略。我很挣扎,因为我得到的结果与不使用包编写的策略的结果不同。特别是这个想法:

  • 我想在以下情况下做多:EMA1 > EMA2 & EMA1 > EMA3 & EMA1_lag < EMA1

  • 我想在 EMA1 < EMA3 时退出平仓

这是我写的和工作的:

在 quantstrat 我这样写,但它的工作原理不同的结果:

谁能帮我理解为什么它没有给出类似的结果?

0 投票
1 回答
1082 浏览

r - 将技术指标添加到图表.Posn

出于某种原因,我无法将 ROC 信号添加到吸墨纸图表中。在文档中它应该被允许。我想用这个指标创建一个新的图表。有人可以帮忙吗?

0 投票
0 回答
128 浏览

r - 在 Quantmod 中使用应用和嵌入 R 找到最大值

嗨,我在看这个网站

http://www.r-bloggers.com/backtesting-a-simple-stock-trading-strategy/

但我无法理解下面的这段代码:

我的问题是,如果您 embed(x,1) 那么它将时间序列对象(GSPC)转换为矩阵。正确的?

但是如果你将 which.max 函数应用到这个矩阵中,它会不会找到最大值的索引(位置)(例如,在这种情况下,最大音量)?

不是最高价格,因为您正在搜索矩阵中的每个元素。

为什么要减去 1?

他在帖子中解释了它,但我无法理解它是如何工作的......

0 投票
1 回答
127 浏览

r - 使用 addPosLimit 和 osMaxPos 会引发“PosLimit[, "MaxPos"] 中的错误:维数不正确”

即使我从 blog.fosstrading.com/2011/08/tactical-asset-allocation-using.html 复制粘贴示例,我也会收到此错误:

这是一个错误还是我错过了什么?

sessionInfo() 的输出:

0 投票
2 回答
201 浏览

r - Quantstrat rule label in transaction

I don't seem to find is there a way to see Rule name/label of the transaction when reviewing them. I use getTxns() but it is from blotter package and it is not aware of rules that are created by quantstrat. What would be best way to do that?

0 投票
1 回答
88 浏览

r - 运行函数链 order,order.price

目标:使用时间戳生成止损限价(也不是追踪止损)。大部分代码都是从 Ilya Kipnis 的设计中窃取的,用于基于 ATR 计算头寸大小。代码的链接在下面的评论中,因此可以复制。

我相当确定该函数会产生预期的效果,但我不知道 order.price 需要什么类型的信息。看来我需要指出这是一个函数,而不是一个数字。

我正在以链顺序运行以下函数,以计算 order.price。

错误是:

0 投票
1 回答
67 浏览

r - 修改 ruleSignal 的 stoplimit 类型

我想知道是否有人可以帮助我修改我的止损(止损)规则。如何将其更改为以低于限价的收盘价卖出,而不是低于限价的低位卖出?

0 投票
1 回答
146 浏览

r - 创建真/假信号和相关函数

以下 quantstrat 系统产生以下错误:

这是我的“hardStop”功能/指标的问题。它是一个 if/else 函数,它采用当前基于 ATR 的停止的时间戳(由函数/指示符“stopLimit”生成并作为列存储在 mktdata 中)。

当我为“buyTrigger”列运行以下代码时,它会产生令人满意的 TRUE/FALSE 信号。

所以这是有问题的功能。

知道为什么我有这个错误吗?

完整的代码如下,这使得这篇文章很长。对不起。

0 投票
2 回答
90 浏览

trading - Quantstrat:在下一个柱卖出(自定义)

我正在修改 quantstrat 中与停止限制相关的内置函数。我想测试一个仅在收盘价低于止损限价时出售的系统。我能够更改比较数据,使其在close < stoplimit.

但是,销售交易发生在收盘触发销售的同一天。这是我正在解决的问题。

如何更改此代码以在第二天出售?