MT4のインストールドライブの容量を増やすTips

バックテストや最適化を繰り返していると、HDDの容量が少なくなっていきます。

大容量のHDDを搭載しているPCでしたら問題無いのですが、いつも容量不足に悩んでいるという方へのTipsを紹介します。

①MT4の[ファイル]-[データフォルダを開く]

②[tester]配下の[caches]フォルダ内のファイルを全て削除。

③[tester]配下の[logs]フォルダ内のファイルを全て削除。

④[tester]配下の[logs]フォルダ内のファイルを全て削除。

以上で、かなりのHDD容量が空くのではないかと思います。


定期的に上記の操作を行う事で、HDDの容量不足が解消されるのではないでしょうか。

スポンサーサイト

オフラインチャートにセットしたインジケータを別チャートから参照する方法

MT4で3分足や2時間足といった、標準機能では表示できない足のチャートを表示したい場合にはオフラインチャートを使う事が多いです。

このオフラインチャートにセットしたインジケータの内容を別のチャートから参照したい場合には、下記のように記述します。

iMA(NULL, PERIOD_M3, 10, 0, MODE_SMA, PRICE_CLOSE, 0);

上記では、iMA関数の第2パラメータで参照したいチャートの時間足を指定しています。(上記の例では3分足)

オフラインチャートの場合、この第2パラメータで指定出来る値は下記の通りとなっています。

PERIOD_M2
PERIOD_M3
PERIOD_M4
PERIOD_M6
PERIOD_M10
PERIOD_M12
PERIOD_M20
PERIOD_H2
PERIOD_H3
PERIOD_H6
PERIOD_H8
PERIOD_H12


上記以外の時間足を指定したい場合には、直接数値を指定する事で実現出来ます。(下記の例では18分足)

iMA(NULL, 18, 10, 0, MODE_SMA, PRICE_CLOSE, 0);

楽天証券のMT4デモ口座は他社のデモ口座のように開設出来ない

楽天証券で取り扱っているFX口座ですが、MT4に対応しているのにもかかわらず、デモ口座の開設手順が他社の方法と異なっています。

①「デモ口座の申請」ウィンドウから「RakutenSecurities-Demo」を選択し、[次へ]をクリック。

②[新しいデモ口座]を選択し、[次へ]をクリック。

通常なら「お客様情報のご入力」ウィンドウが表示されるのですが、楽天FXの場合はブラウザが起動して楽天証券のページに飛んでしまいます。

つまり、楽天証券の口座を開設しなければFXデモ口座が開設出来ないようなのです。

これって、あまり良い仕組みだとは思えませんね。

バックテストの疑似Tickは、毎回同じTickを刻むのか?

検証してみました。

EA
//+------------------------------------------------------------------+
//| TickChecker.mq4 |
//| EA作成代行 シストレパートナーズ |
//| http://sistrepertners.sakura.ne.jp/ |
//+------------------------------------------------------------------+
#property copyright "EA作成代行 シストレパートナーズ"
#property link "http://sistrepertners.sakura.ne.jp/"
#property version "1.00"
#property strict

//+------------------------------------------------------------------+
//| インクルード定義 |
//+------------------------------------------------------------------+
#include
#include

//+------------------------------------------------------------------+
//| 定数 |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| パラメータ |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| グローバル変数 |
//+------------------------------------------------------------------+
int G_TickNum;

datetime G_TickTime;

//+------------------------------------------------------------------+
//| 初期処理 |
//+------------------------------------------------------------------+
int OnInit()
{
G_TickTime = 0;

return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| 終了処理 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
}

//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
// 足が確定したら
if (G_TickTime != Time[0])
{
// Tick数を初期化
G_TickNum = 0;
G_TickTime = Time[0];
}

// ログに出力
Print("Tick Price[" + IntegerToString(G_TickNum) + "] = " + DoubleToStr(Bid, Digits));

// Tick数をカウント
G_TickNum++;
}

結果(1回目)
2 12:57:21.631 2017.10.01 00:00:00 TickChecker test started
0 12:57:21.632 2017.10.02 00:00:00 TickChecker USDJPY,M15: Tick Price[0] = 112.649
0 12:57:21.632 2017.10.02 00:00:03 TickChecker USDJPY,M15: Tick Price[1] = 112.647
0 12:57:21.632 2017.10.02 00:00:06 TickChecker USDJPY,M15: Tick Price[2] = 112.644
0 12:57:21.632 2017.10.02 00:00:09 TickChecker USDJPY,M15: Tick Price[3] = 112.642
0 12:57:21.632 2017.10.02 00:00:12 TickChecker USDJPY,M15: Tick Price[4] = 112.639
0 12:57:21.632 2017.10.02 00:00:16 TickChecker USDJPY,M15: Tick Price[5] = 112.637
0 12:57:21.632 2017.10.02 00:00:19 TickChecker USDJPY,M15: Tick Price[6] = 112.634
0 12:57:21.632 2017.10.02 00:00:22 TickChecker USDJPY,M15: Tick Price[7] = 112.632
0 12:57:21.632 2017.10.02 00:00:25 TickChecker USDJPY,M15: Tick Price[8] = 112.630
0 12:57:21.632 2017.10.02 00:00:29 TickChecker USDJPY,M15: Tick Price[9] = 112.627
0 12:57:21.632 2017.10.02 00:00:32 TickChecker USDJPY,M15: Tick Price[10] = 112.625
:
0 12:57:21.745 2017.10.02 23:58:21 TickChecker USDJPY,M15: Tick Price[372] = 112.734
0 12:57:21.745 2017.10.02 23:58:23 TickChecker USDJPY,M15: Tick Price[373] = 112.735
0 12:57:21.745 2017.10.02 23:58:25 TickChecker USDJPY,M15: Tick Price[374] = 112.733
0 12:57:21.745 2017.10.02 23:58:27 TickChecker USDJPY,M15: Tick Price[375] = 112.734
0 12:57:21.745 2017.10.02 23:58:30 TickChecker USDJPY,M15: Tick Price[376] = 112.733
0 12:57:21.745 2017.10.02 23:58:32 TickChecker USDJPY,M15: Tick Price[377] = 112.732
0 12:57:21.745 2017.10.02 23:58:34 TickChecker USDJPY,M15: Tick Price[378] = 112.733
0 12:57:21.745 2017.10.02 23:58:36 TickChecker USDJPY,M15: Tick Price[379] = 112.731
0 12:57:21.745 2017.10.02 23:58:37 TickChecker USDJPY,M15: Tick Price[380] = 112.732
0 12:57:21.745 2017.10.02 23:58:41 TickChecker USDJPY,M15: Tick Price[381] = 112.731
0 12:57:21.745 2017.10.02 23:58:43 TickChecker USDJPY,M15: Tick Price[382] = 112.730
0 12:57:21.745 2017.10.02 23:58:44 TickChecker USDJPY,M15: Tick Price[383] = 112.739

結果(2回目)
2 12:57:48.751 2017.10.01 00:00:00 TickChecker test started
0 12:57:48.751 2017.10.02 00:00:00 TickChecker USDJPY,M15: Tick Price[0] = 112.649
0 12:57:48.751 2017.10.02 00:00:03 TickChecker USDJPY,M15: Tick Price[1] = 112.647
0 12:57:48.751 2017.10.02 00:00:06 TickChecker USDJPY,M15: Tick Price[2] = 112.644
0 12:57:48.751 2017.10.02 00:00:09 TickChecker USDJPY,M15: Tick Price[3] = 112.642
0 12:57:48.751 2017.10.02 00:00:12 TickChecker USDJPY,M15: Tick Price[4] = 112.639
0 12:57:48.751 2017.10.02 00:00:16 TickChecker USDJPY,M15: Tick Price[5] = 112.637
0 12:57:48.751 2017.10.02 00:00:19 TickChecker USDJPY,M15: Tick Price[6] = 112.634
0 12:57:48.751 2017.10.02 00:00:22 TickChecker USDJPY,M15: Tick Price[7] = 112.632
0 12:57:48.751 2017.10.02 00:00:25 TickChecker USDJPY,M15: Tick Price[8] = 112.630
0 12:57:48.751 2017.10.02 00:00:29 TickChecker USDJPY,M15: Tick Price[9] = 112.627
0 12:57:48.751 2017.10.02 00:00:32 TickChecker USDJPY,M15: Tick Price[10] = 112.625
:
0 12:57:48.866 2017.10.02 23:58:21 TickChecker USDJPY,M15: Tick Price[372] = 112.734
0 12:57:48.866 2017.10.02 23:58:23 TickChecker USDJPY,M15: Tick Price[373] = 112.735
0 12:57:48.866 2017.10.02 23:58:25 TickChecker USDJPY,M15: Tick Price[374] = 112.733
0 12:57:48.866 2017.10.02 23:58:27 TickChecker USDJPY,M15: Tick Price[375] = 112.734
0 12:57:48.866 2017.10.02 23:58:30 TickChecker USDJPY,M15: Tick Price[376] = 112.733
0 12:57:48.866 2017.10.02 23:58:32 TickChecker USDJPY,M15: Tick Price[377] = 112.732
0 12:57:48.866 2017.10.02 23:58:34 TickChecker USDJPY,M15: Tick Price[378] = 112.733
0 12:57:48.866 2017.10.02 23:58:36 TickChecker USDJPY,M15: Tick Price[379] = 112.731
0 12:57:48.866 2017.10.02 23:58:37 TickChecker USDJPY,M15: Tick Price[380] = 112.732
0 12:57:48.866 2017.10.02 23:58:41 TickChecker USDJPY,M15: Tick Price[381] = 112.731
0 12:57:48.866 2017.10.02 23:58:43 TickChecker USDJPY,M15: Tick Price[382] = 112.730
0 12:57:48.866 2017.10.02 23:58:44 TickChecker USDJPY,M15: Tick Price[383] = 112.739

全く同じTickを刻んでいる事がわかります。

良く考えると、毎回違ったTickが刻まれたりしたら「バックテスト結果が毎回違う!?」なんて事態も発生し得る訳で、当然といえば当然ですね。

メタクオート社はMT4を抹消しようとしているのか?

久しぶりにMT4の新規インストールの必要が生じたので、メタクオート社のHPにアクセスしてみたのですが、MT4のインストーラーがダウンロード出来ませんでした。

それらしきファイルはダウンロード出来るのですが、実際にはMT5がインストールされてしまいます。

どうしてこのような状況なのか、少しだけ調べてみました。

結論としては、メタクオート社はMT4を抹消し、代わりとしてMT5を普及させていきたいという思惑があるようなのです。

確かにMT5にはMT4には無い機能が実装されていますが、ブローカーがMT5への移行に追いついていないのが現状だと思います。

そのような状況で、メタクオート社ばかりが先走ってMT4を抹消しようとするのは、ユーザー側からするとあまり印象が良くないですね。

MT5については、日々バージョンアップが繰り返されており、機能の充実が図られています。

ある時期から、MQL4の機能にMQL5の機能が追加される事が多くなっていましたが(現状では完全互換には程遠い)、今考えるとMT5への移行をスムーズに行わせる為のメタクオート社の思惑があったのかも知れません。

今後の国内シェアの動向に注目していきたい所です。


管理人が運営しているEA作成代行サイト「シストレパートナーズ」でも、MT5のEA・インジケータ等の開発も受け付けています。

アクセスカウンター
プロフィール

大和

Author:大和
フリーランスのプログラマーです。

EA作成代行承ります
最新記事
カテゴリ
広告
最新コメント
最新トラックバック
月別アーカイブ
リンク
メールフォーム

名前:
メール:
件名:
本文:

ランキング参加中
応援よろしくお願いします。
検索フォーム
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード