问题标签 [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.
r - quantstrat addPosLimit() 在同一策略中做多和做空时不会限制我的头寸
当我有一个做多和做空的策略并且我将addPosLimit()
功能设置为 havemaxpos=1 and minpos=-1
时,它仍然需要一个多头和一个空头头寸。但如果我只做多或做空策略,它会按预期工作。
我为此示例创建了一个基本策略。它有 3 个移动平均线,一个长期 SMA 作为多头/空头偏差过滤器,两个短期 SMA 作为一个交叉向上做多,当有做多倾向时,一个交叉向下做空当有做空倾向。交易开始后,我有一个固定距离的利润目标和止损。
这是策略。
这是交易输出的样本。
我希望策略做多,然后达到利润目标或被止损,或者在给出空头信号时关闭订单,反之亦然。
如果我注释掉所有短边代码,它似乎可以按预期工作。以下是空方被注释掉时的交易示例。
我可以看到它在达到目标/停止之前不会再次交易。
r - 从循环到 Quantstrat
我想使用 quantstrat 构建一个简单的交易策略。我很挣扎,因为我得到的结果与不使用包编写的策略的结果不同。特别是这个想法:
我想在以下情况下做多:EMA1 > EMA2 & EMA1 > EMA3 & EMA1_lag < EMA1
我想在 EMA1 < EMA3 时退出平仓
这是我写的和工作的:
在 quantstrat 我这样写,但它的工作原理不同的结果:
谁能帮我理解为什么它没有给出类似的结果?
r - 将技术指标添加到图表.Posn
出于某种原因,我无法将 ROC 信号添加到吸墨纸图表中。在文档中它应该被允许。我想用这个指标创建一个新的图表。有人可以帮忙吗?
r - 在 Quantmod 中使用应用和嵌入 R 找到最大值
嗨,我在看这个网站
http://www.r-bloggers.com/backtesting-a-simple-stock-trading-strategy/
但我无法理解下面的这段代码:
我的问题是,如果您 embed(x,1) 那么它将时间序列对象(GSPC)转换为矩阵。正确的?
但是如果你将 which.max 函数应用到这个矩阵中,它会不会找到最大值的索引(位置)(例如,在这种情况下,最大音量)?
不是最高价格,因为您正在搜索矩阵中的每个元素。
为什么要减去 1?
他在帖子中解释了它,但我无法理解它是如何工作的......
r - 使用 addPosLimit 和 osMaxPos 会引发“PosLimit[, "MaxPos"] 中的错误:维数不正确”
即使我从 blog.fosstrading.com/2011/08/tactical-asset-allocation-using.html 复制粘贴示例,我也会收到此错误:
这是一个错误还是我错过了什么?
sessionInfo() 的输出:
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?
r - 运行函数链 order,order.price
目标:使用时间戳生成止损限价(也不是追踪止损)。大部分代码都是从 Ilya Kipnis 的设计中窃取的,用于基于 ATR 计算头寸大小。代码的链接在下面的评论中,因此可以复制。
我相当确定该函数会产生预期的效果,但我不知道 order.price 需要什么类型的信息。看来我需要指出这是一个函数,而不是一个数字。
我正在以链顺序运行以下函数,以计算 order.price。
错误是:
r - 修改 ruleSignal 的 stoplimit 类型
我想知道是否有人可以帮助我修改我的止损(止损)规则。如何将其更改为以低于限价的收盘价卖出,而不是低于限价的低位卖出?
r - 创建真/假信号和相关函数
以下 quantstrat 系统产生以下错误:
这是我的“hardStop”功能/指标的问题。它是一个 if/else 函数,它采用当前基于 ATR 的停止的时间戳(由函数/指示符“stopLimit”生成并作为列存储在 mktdata 中)。
当我为“buyTrigger”列运行以下代码时,它会产生令人满意的 TRUE/FALSE 信号。
所以这是有问题的功能。
知道为什么我有这个错误吗?
完整的代码如下,这使得这篇文章很长。对不起。
trading - Quantstrat:在下一个柱卖出(自定义)
我正在修改 quantstrat 中与停止限制相关的内置函数。我想测试一个仅在收盘价低于止损限价时出售的系统。我能够更改比较数据,使其在close < stoplimit
.
但是,销售交易发生在收盘触发销售的同一天。这是我正在解决的问题。
如何更改此代码以在第二天出售?