0

vv各ティックの市場ボリューム データを含むベクトルと、異なる minuteIdx分のインデックスを含むベクトルがあります。accumarray次のように、各分内のボリュームを合計するために使用しています。

orgMinuteVolumes = accumarray(minuteIdx, vv); %default function is @sum  
notrades = orgMinuteVolumes == 0;   
minuteVolumes = orgMinuteVolumes;
minuteVolumes(notrades) = []; 

通常は問題なく動作しますが、1 分間にすべてのティックのボリューム データを取得できず0、ボリューム ベクトルに s が含まれることがあります。これにより、minuteVolumesすべてのゼロを削除したため、ベクトルが他の場合よりも短くなります。たとえばvv、a で始まる場合1(最初の 1 分間にティックが 1 つしかない場合)、minuteVolumes は長くなりますが、a で始まる175ように変更すると、長くなるだけです。ベクトルを短くするのではなく、ベクトルにaを表示したい。これを実現する賢い方法はありますか?私の当初の論理では、取引が発生するためにはボリュームがゼロではない必要がありましたが、時折発生する悪いデータは考慮していませんでした。vv0minuteVolumes1740minuteVolumes

4

0 に答える 0