*

第12回:消えてしまう数値を一時的に保存して利用する~変数~

公開日: : FX自動売買開発 , , , ,

変数の役割

これまでにもあまり大した説明をせずに変数を扱ってきましたが、
ここでは変数について重点的に行います。

変数には大きく分けて2種類の役割があります。
1.何度も使う数値や数式を引き出しやすくして、演算量を減らし、記述を楽にする
2.そのままだと消えてしまうデータを一時的に保存しておく

1だけ聞くと、
「演算量なんてどうでもいいし、楽な記述よりも慣れたやり方の方がいい」
という選択肢もあるのですが、

変数にはデータを一時的に保存することができるので、
この機能を使うには避けて通ることはできません。

例えば、
テクニカル指標のシグナルが発生してすぐにエントリーではなく、
5分後にエントリーさせたい場合を考えます。

TimeCurrent()では現在の時刻しか取得できないため、
テクニカル指標のシグナルが発生した瞬間にその時間をどこかに記録しておく必要があります。

上記のようにすることによって
RSI_Signal_Timeという変数にシグナルが発生した時間が格納されます。

ここで注意しなければならないのは、冒頭の datetime RSI_Signal_Time; です。

変数は利用する前にあらかじめ、
どんなタイプの変数なのか、
どんな名前なのかを宣言しなければなりません。

タイプには、整数、少数、文字、時間、真偽などがあります。

それぞれのタイプに合わせて変数の宣言を行わなければなりません。

また、変数名は半角英数字で決めてください。
ただし、「数字から始まる文字」、「-(ハイフン)」などは利用できません。

後は分かりやすい名前にすることを強く推奨いたします。

=はイコールではなく代入

今までもチラチラと出現していましたが、
=はプログラミングではイコールではなく、代入を表します。

はNumberという変数に5を入れたということを意味します。

変数には一つの数字しか格納することができません。

このように続けて同じ変数に値を入れようとすると、
古い数字は破棄され、新しい10がNumberに格納されます。

シグナル発生から5分以内に10pips上がったらエントリー
これまでのことを元に14RSIが30ラインを下から上にクロスした後、
5分以内に10pips上がったらエントリーするというEAを作ってみます。

冒頭にあるstaticというのは
ティック更新後にも変数をリセットしないでください、
という意味を持つ呪文です。

これがないと、ティック更新後に変数がリセットされてしまい、
RSI_Signal_TimeとRSI_Signal_Rateが0になってします。

シグナル発生後5分以内というのは、
言い換えると
「現在の時間 < シグナルが発生した時間 + 300秒」ということになります。 また、ドル円の場合10pipsは0.10なので、 10pips上がったらエントリーというのは「現在のレート > シグナル時のレート + 0.10」 ということになります。

このコメントはWEBに公開されるので、問い合わせ等はメールでお願いします。

関連記事

合成通貨アービトラージ

FXは通貨ペアなので、 その組み合わせは無数にあります。 例えば、ドルから円に換える場合、

記事を読む

【MQL4】外部ソフトなしで稼働するコピートレードツールを作る。その⑧ラスト

意外と長い記事になってしまいましたが、今回でコピーツールの開発は終了です。 最後のソフトだけ欲しい

記事を読む

第5回:コンパイルとEAの生成

ここではソースコードからEAを生成します。 mqファイルのコンパイル ソースコードファイルは

記事を読む

MT4チャートでバイナリーオプション(笑)

注:この記事は、MT4のチャート上でバイナリーオプションのような操作パネルを表示させるための、 開

記事を読む

週明け窓埋めロジックってどうなの?

FXの中でも有名なトレード手法として、 窓埋めロジックというものがあります。 株の場合は、窓

記事を読む

 
  • ブログ管理人の横瀬兼元(ペンネーム)です。

    "FX"の自動売買システムに興味がある方はinfo@aiforex.infoにご連絡ください。
    担当の方が対応します

    トレード成績はこのブログに掲載しています。


    株、仮想通貨、それ以外の私に対するご連絡は
    infoあっとfxantenna.com
    まで

ライトコインLTCのアービトラージ取引結果 binance vs poloniex

今回はライトコインのアービトラージ結果です。 最初はレート差1USD

仮想通貨アービトラージに取引所間の送金は必ずしも必要ではない

ここまで話を進めてきていまさら~な感じもするのですが、そもそものところ

BCH(ビットコインキャッシュ)のアービトラージの取引結果(Binance vs Poloniex)

今回はビットコインキャッシュのアービトラージの取引結果です。

ETH(イーサリアム)のアービトラージの取引結果(Binance vs Poloniex)

前回まででアルトコインのアービトラージの作り方や背景について説明しまし

APIを使ったアルトコインの自動アービトラージ

国内の取引所ではAPI取引でビットコイン以外をトレードできないため、ア

→もっと見る

PAGE TOP ↑