Signal Remove

書式:SignalRemove (DATA_ARRAY_1, DATA_ARRAY_2)

この関数は重複する”True”値を取り除きます。データ配列1が初めて”True”になり、次にデータ配列2が初めて”True”になるまで1を返し、データ配列2がTrueになった時点で、0(ゼロ)へリセットされます。(データ配列1が”True”を出し続けても0(ゼロ)を返します)

例:下記の画面コピーでは価格枠の下に4つの追加枠があります。価格枠には2つの移動平均線が表示されており2つの移動平均線が交差する箇所に黒い垂直線が表示されています。各追加枠は特定の条件を計算した出力変数が各自表示されています。各変数の値は条件ステートメントに基づいているため、出力変数は+1(true)もしくは0(false)のみとなります。

式は下記となります。

{10期間単純移動平均が30期間単純移動平均より高いバーで+1を返します。その他の場合では0(ゼロ)を返します}
{Additional Frame 1−青線}
Buy:= mov(Close,10,S) > mov(Close,30,S);

{BuyがTrueになった最初のバーに+1を返し、SellがTrueなる後まで(最低1バー)0(ゼロ)を返します。またBuyがTrueになったバーより+1を返します。}

{Additional Frame 2−濃い青線}

RemoveBuySignals:= SignalRemove(Buy,Sell);

{SellがTrueになった最初のバーに+1を返し、BuyがTrueになる後まで(最低1バー)まで0(ゼロ)を返します。またSellがTrueになったバーより+1を返します}
{Additional Frame 4−濃い赤線}
RemoveSellSignals:= SignalRemove(Sell,Buy);

ロジックの結果は下記の通りです。

Signal Remove

公式:_SignalRemove:=SignalRemove(LongSetup=1,ShortSetup=1);

SignalRemove

DL:trsys_BBandsBreakout_1_1_1_1_1

※わかりやすくするため「trsys_BBandsBreakout」を使ってプログラミングしました。

VTトレーダー関数一覧に戻る