问题标签 [volatility]

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 投票
0 回答
642 浏览

r - GARCH 预测扩展窗口:rollapplyr() 和 apply.fromstart()

我的意图是使用来自扩展窗口的数据使用 GARCH(1,1) 生成预测。每天都有一个新的回报进入数据集,我将重做 GARCH 拟合和预测。函数 myFit 执行此操作,但现在我需要将一个每天都在增加的返回窗口作为参数传递。两种方法是 apply.fromstart() 和 rollapplyr()。

在下面的代码中,我决定在收集到至少 100 个回报后开始滚动计算,因为这是 ugarchforecast() 执行预测所需的最小数据量。

最后两行调用 myFit ,从 100 的窗口开始,它们将函数应用于扩展窗口。如果设置如下,我期望 apply.fromstart() 和 rollapplyr() 都提供相同的数据。毕竟他们将相同的功能(myFit)应用于相同的数据。不幸的是,只有第一个值是相同的,然后预测不再对齐。

这是我的健身

这些是 forecastVec1 的元素(因此使用 apply.fromstart() 时的预测):

这些是 forecastVec2 的元素(使用 rollapplyr()):

如前所述,只有第一个元素是相同的。我在 rollapplyr() 中应用增加窗口的方式可能是错误的?我正在传递一个宽度向量,所以我期望在每次迭代中,函数将使用一个窗口 100,然后是 101,然后是 102...103,最后是 104。这应该与 apply.fromstart() 后面的逻辑相同因为我设置了 gap=100 并且每次迭代都应该将窗口增加 1。

你能帮我找出错误吗?谢谢。

0 投票
1 回答
1104 浏览

amazon-ec2 - Spot 实例终止

我计划开始使用 Amazon EC2,并且和大家一样,我想使用 Spot 实例。

将用于迷你游戏服务器,因此 Spot 实例非常适合。玩家进入、比赛和离开,因此当 Spot 实例由于 Spot 实例价格波动而结束时,只会完成当前比赛,几乎不会丢失任何数据,并且在您节省大量资金时完全可以接受。

现在,当波动率达到最高出价时,尽管玩家将断开连接并连接到按需服务器,我想知道当 Spot 实例被强制终止时是否称为正常关闭命令或只是“拔出”而我不知道'没有机会安全地断开玩家的连接并将他们的数据保存到数据库中(这只需几毫秒)。

0 投票
1 回答
694 浏览

matlab - Matlab Black Scholes 公式如何从 B&S 价格中获取波动性

我刚开始使用 matlab 并且有一个问题可能很简单?

我得到了 Black&Scholes 公式来获得具有以下输入参数的看涨期权价格:S = 股票价格,K = 行使价,r = 利率,T = 到期时间,sigma = 波动率

看涨期权价格由下式给出:

我对这个功能没有任何问题,但我需要得到 black scholes 的波动性。

我有输入:S, K , r , T , BlackScholesPrice我想返回 sigma。

我尝试使用“syms sig;solve ("blackscholesequation"==blacksholesprice,sig);" 但没什么可做的,我总是得到一个错误

如果有人有想法,那就太棒了。谢谢大家'

0 投票
2 回答
1552 浏览

python - 如何为 Volatility 设置 python 环境变量

我正在尝试设置波动性,因此无论我当时碰巧在哪个目录中,我都可以执行命令。我不确定我做错了什么,我已经使用 export 命令设置了环境变量。我仔细检查了我的 ~/.bashrc,甚至将目录添加到 /etc/enviroment。运行 echo $PATH=vol.py 将返回 /mydir/volatility/vol.py。但是当我运行 python vol.py 我得到 "python: can't open file 'vol.py': [Errno 2] No such file or directory" 。

所以我猜我的问题。如何为 python 设置环境变量,以便当我运行 python vol.py 时,它会在我指向的任何图像文件上执行,而不是在波动性目录中?或者更好的是只需键入 vol.py -f 不管/图像文件,系统将其识别为 python 脚本并执行。

我认为它可能很简单,但我仍在学习,所以非常感谢任何帮助。

我的系统:Kubuntu 14.04LTS;蟒蛇2.7;波动性 2.4

0 投票
0 回答
58 浏览

io - C++ I/O 流如何掩盖底层计算机系统的 I/O 波动性?

问题在标题中。我确实在网上冲浪了一些答案,但没有真正回答它。我得到了 I/O 流的定义和波动性的定义,但两者之间没有任何联系。提前致谢!

0 投票
1 回答
1380 浏览

r - R2OpenBUGS 错误:节点不是随机的


我在 R 中运行 R2OpenBUGS 时遇到了一个特定问题。但它在 OpenBUGS 中运行得非常好。
我想了解问题所在。

这是我的代码:

模型波动率;
常数 n=180;
{

# 可能性:ys
的联合分布 (t in 1:n)
{
yisigma2[t] <- 1/exp(theta[t]);
y[t] ~ dnorm(0,yisigma2[t]);
}

先验分布

亩〜dnorm(0,0.1);
phistar ~ dbeta(20,1.5);
itau2 ~ dgamma(2.5,0.025);
β <- exp(mu/2);
phi <- 2*phistar-1;
tau <- sqrt(1/itau2);
theta0 ~ dnorm(mu,itau2);
thmean[1] <- mu + phi*(theta0-mu);
theta[1] ~ dnorm(thmean[1],itau2);
for (t in 2:n)
{
thmean[t] <- mu + phi*(theta[t-1]-mu);
theta[t] ~ dnorm(thmean[t],itau2);

}
}




R 代码:
svm.sim <- bugs(data, inits, model.file = "C:/Documents and Settings/code.txt", parameters = c("mu", "phi", "tau"), n. chains = 1, n.iter = 1000, codaPkg = TRUE,debug=TRUE)

这是我从 R 运行 OpenBUGS 日志中显示的错误:



模型在语法上是正确的
数据加载
模型 编译
的这个节点组件不是随机 phi 错误 pos 25
无法为 UpdaterNormal 类型的节点生成初始值。StdUpdater
模型必须在更新
之前初始化 模型必须在监视器之前初始化 使用的
模型必须在监视器之前初始化使用的
模型必须在显示器之前初始化 使用的
模型必须在显示器之前初始化 使用的
模型必须在 DIC 可以被监控
之前初始化 模型必须在更新之前初始化
模型必须在显示器之前初始化
DIC 显示器未设置


任何帮助将不胜感激
谢谢问候
迪纳卡

0 投票
2 回答
234 浏览

windows - Windows 中的原子性、易失性和线程安全

我对原子性的理解是,它用于确保一个值将被整体而不是部分地读取/写入。例如,实际上是两个 32 位 DWORD(此处假设 x86)的 64 位值在线程之间共享时必须是原子的,以便同时读取/写入两个 DWORD。这样一个线程就无法读取未更新的半变量。你如何保证原子性?

此外,据我了解,波动性根本不能保证线程安全。真的吗?

我已经看到它暗示了很多地方,简单的原子/易失性就是线程安全的。我不明白这是怎么回事。我是否还需要一个内存屏障来确保在实际保证在另一个线程中读取/写入之前读取/写入任何原子值或其他值?

因此,例如,假设我创建了一个挂起的线程,进行一些计算以将某些值更改为线程可用的结构,然后恢复,例如:

我想这将取决于 ResumeThread 中的任何内存障碍?我应该对 val64 进行联锁交换吗?如果线程正在运行,那会如何改变事情呢?

我确定我在这里问了很多,但基本上我想弄清楚的是我在标题中提出的问题:对 Windows 中的原子性、易变性和线程安全性的一个很好的解释。谢谢

0 投票
0 回答
510 浏览

matlab - How to get around flat likelihood function when calibrating GBM parameters

I want to calibrate jointly the drift mu and volatility sigma of a geometric brownian motion,

where Z_t is a standard normally distributed random variable, and am testing this by generating data x = log(S_t) via

and my (log-)likelihood function

which I maximize using fmincon (because sigma is constrained to be positive), with starting values 0.15 and 0.3, true values 0.1 and 0.2, and N = Nt = 1000 or 100000 generated points over one year (=> Deltat = 0.0001 or 0.000001).

Calibrating the volatility alone yields a nice likelihood function with a maximum around the true parameter, but for small Deltat (less than say 0.1) calibrating both mu and sigma persistently shows a (log-)likelihood surface being very flat in mu (at least around the true parameter); I would expect also a maximum there; for a reason I think it should be possible to calibrate a GBM model to a data series of 100 stock prices in a year, making the average of Deltat = 0.01.

Any sharing of experience or help is greatly appreciated (thoughts passing through my mind: the likelihood function is not right / this is a normal behaviour / too few data points / data generation is not correct / ...?).
Thanks!

0 投票
1 回答
283 浏览

android - 为什么波动性不会从运行 linux_pslist 中返回任何内容

我已经设法使用 LiME 从 android 模拟器中提取易失性内存,并使用易失性进一步分析内存。

运行命令后:

$ python vol.py --profile=LinuxGoldfish3_4ARM -f /path/to/lime.dump linux_pslist

我收到以下信息:

Volatility Foundation Volatility Framework 2.3.1 Offset Name Pid Uid Gid DTB Start Time ---------- -------- ----- ---------- ---------------- ------ ---------- --------- -

我可以知道为什么没有任何东西被退回吗?

0 投票
1 回答
7230 浏览

database - IMMUTABLE、STABLE 和 VOLATILE 关键字如何影响函数的行为?

我们写了一个函数get_timestamp()定义为

这用于 INSERT 和 UPDATE 以在数据库记录的创建和修改字段中输入或编辑值。但是,我们发现在连续添加或更新记录时它返回相同的值。

在检查 pgAdmin III 中的函数时,我们注意到在运行 SQL 来构建函数时,关键字 IMMUTABLE 已在 LANGUAGE SQL 语句之后注入。文档声明默认为 VOLATILE (如果这些都没有出现,则 VOLATILE 是默认假设)所以我不确定为什么要注入 IMMUTABLE,但是,将其更改为 STABLE 已经解决了重复值的问题。

注意:正如接受的答案中所述, pgAdmin 或 Postgres 永远不会将 IMMUTABLE 添加到函数中,并且必须在开发过程中添加。

我猜正在发生的事情是正在评估此函数并且正在缓存结果以进行优化,因为它被标记为 IMMUTABLE 指示 Postgres 引擎在给定相同(空)参数列表的情况下返回值不应更改。但是,当不在触发器中使用时,当直接在 INSERT 语句中使用时,该函数将返回一个不同的值五次,然后从那时起返回相同的值。这是由于某些优化算法说“如果在会话中使用 IMMUTABLE 函数超过 5 次,则缓存结果以供将来调用”之类的内容吗?

任何关于如何在 Postgres 函数中使用这些关键字的说明将不胜感激。鉴于我们在触发器中使用此功能,STABLE 对我们来说是正确的选择,还是有更多需要考虑的事情,例如文档说:

(对于希望查询当前命令修改的行的 AFTER 触发器是不合适的。)

但我并不完全清楚为什么。