OANDA × fx-on.com

変数の変換タイミング・・・・・・MT4(メタトレーダー4)のEA(自動売買)プログラミング講座

int で宣言した変数にいれた少数は切り捨てされます。
またint で宣言した変数の計算結果も同様に切り捨てされます。

例)

int A=1;
Print(“A/2=”,A/2);

結果は A/2=0 と表示されます。
int で宣言した数字の結果もint 型になるからです。

(A/2)の前に(double)をつけます。
int A=1;
Print(“(double)(A/2)=”,(double)(A/2));

この結果は(double)(A/2)=0となります。
(A/2) の計算結果の0に(double)を宣言しています。

次は変数Aに直接(double)を付与します。

int A=1;
Print(“(double)A/2=”,(double)A/2);

結果は(double)A/2=0.5です。

それではint 型と double型の計算結果はどうなるか確認します。
2で割るところを2.0にします。

int A=1;
Print(“A/2.0=”,A/2.0);

結果はA/2.0=0.5 と表示されます。

どちらか一方がdouble型の場合は結果もdoubleになります。
void OnTick(){
int A=1;
Print(“A/2=”,A/2);
Print(“(double)(A/2)=”,(double)(A/2));
Print(“(double)A/2=”,(double)A/2);
Print(“A/2.0=”,A/2.0);
ExpertRemove();
}



筆者について
hayashi

林 貴晴(はやし たかはる)
株式会社ゴゴジャン(fx-on.com運営) メディア営業部 部長

・1981年 小学4年にBASICを習得
・1983年 機械語習得
米国系クインタイルズ・トランスナショナルジャパンにて
スイス系ノバルティスファーマでの業務に従事
英国系グラクソ・スミスクラインで7年の活動
・2015年7月よりEAの開発を開始
・2016年12月ゴゴジャンで業務開始
・2017年2月部長としての活動を始める
高速化の妨げになるコーディング規約に懐疑派。
カジノ式の巧みなロットコントロールや高速EAの開発には定評がある。
バックテストの結果のみでEAの性能をある程度分析できると評価され
fx-ONに記事を執筆。VB6によるシストレ開発に始まり千数百のEAを作成。
その経験からテクニカルが力を発揮するのは短期取引のオシレーターと信念を持つ。

この記事をシェアする


本ホームページに掲載されている事項は、投資判断の参考となる情報の提供を目的としたものであり、投資の勧誘を目的としたものではありません。投資方針、投資タイミング等は、ご自身の責任において判断してください。本サービスの情報に基づいて行った取引のいかなる損失についても、当社は一切の責を負いかねますのでご了承ください。また、当社は、当該情報の正確性および完全性を保証または約束するものでなく、今後、予告なしに内容を変更または廃止する場合があります。なお、当該情報の欠落・誤謬等につきましてもその責を負いかねますのでご了承ください。

ホーム » OANDA Education X fx-on.com » 変数の変換タイミング・・・・・・MT4(メタトレーダー4)のEA(自動売買)プログラミング講座