抱歉,如果问题措辞不佳,我会尽力而为。
如果我有一个以时间为单位的值序列,Observable[(U,T)]
其中 U 是一个值,T 是类时间类型(或者我想的任何差异),我怎么能编写一个操作符,它是一个自动重置的一键式屏障,它在 时是无声的abs(u_n - u_reset) < barrier
,但如果碰到屏障就会吐出t_n - t_reset
,此时它也会重置u_reset = u_n
。
也就是说,该运算符接收到的第一个值成为基线,它什么也不发出。此后,它会监视流的值,一旦其中一个值超出基线值(高于或低于),它就会发出经过的时间(由事件的时间戳测量),并重置基线。然后将处理这些时间以形成对波动率的高频估计。
作为参考,我正在尝试编写http://www.amazon.com/Volatility-Trading-CD-ROM-Wiley/dp/0470181990中概述的波动率估计器,而不是测量标准偏差(在常规均匀时间的偏差),您重复测量突破某个固定障碍量的障碍所需的时间。
具体来说,这可以使用现有的运算符编写吗?我对如何重置状态有点困惑,尽管也许我需要创建两个嵌套运算符,一个是一次性的,另一个是不断创建一次性的...我知道可以通过编写来完成一个手,但是我需要写我自己的出版商等等。
谢谢!