买入和卖出要在r中优化的信号

时间:2018-04-02 14:49:30

标签: r

这个问题是similar like this ..但这是完全不同的......

这里的信号应该是这样的

 -1 -1 -1 -1 -1 -1 -1 -1 -1  0  0  0  0  1  0  0  0  0  0  0  0  0  0  0  1 
 0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  0  0  0  0  0  0  1  1  0  0  0 -1
 -1 -1 -1  0  0  0  0  0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1  0  0 -1 -1 -1 -1 -1  0 
 0  1  1  1  1  1  1  1  1  1  1  1  1  1

比如说

如果0出现则必须等到所有值之间的1都应为-1,就像它应该在那里一样。

它会看这个..

-1 -1 -1 -1 -1 -1 -1 -1 -1  0  -1 -1 -1  1  0  -1 -1 -1 -1 -1 -1 -1 -1 -1 1  0  -1
  -1 -1 -1 -1 -1 -1 -1 -1 -1  -1 -1 -1  1  0  -1 -1  -1 -1 -1  1  -1  0  -1  -1 -1 -1 
-1 -1  -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1  -1 -1 -1 -1 -1 -1 -1  -1  -1  1
  -1  -1  -1  -1  -1  -1  -1  -1  -1  -1  -1  -1

应该像买卖买卖这样..

帮助将不胜感激......

1 个答案:

答案 0 :(得分:1)

转换的规则是:如果0的序列后跟1,则将前0设置为-1,将其他0设为-1。如果0的序列后跟-1,则将所有0设置为-1

相当于

摆脱-1,因为它们没有被修改,也不会影响其他值。现在我们的序列只包含0和1。 然后,将所有0和1设置为相同的值-1。

x[x!=-1][sequence(rle(as.character(x[x!=-1]))$lengths)!=1] = -1