MQL4とMQL5ソースの共通化(ストレージの使用)

MQL4

ProConX MT5対応の一覧

前回→「ProConX MT5対応 プロコンX PIPS消去による決済機能(MQL4からMQL5へ)」

 

おおかたMT5対応が完成したのですが
ここで問題が。。。

MT5対応でソースをかなり変更したため
元のMT4のソースからだいぶかけ離れて
しまったのです。

これは由々しき問題です。

ソースは1本化しておかないと
保守が大変です。

 

まず、一本化には2つの課題があります。

  1. ロジックの一本化
  2. ソースの配置の一元化

1.ロジックの一本化

これは、かなり大変ですが単純に

こんな感じで、MQL5のソースを

#ifdef __MQL5__
でくくっていけばOKです。

後は、コンパイラがそれぞれ
別々に吐き出してくれます。

 

2.ソースの配置の一元化

問題はこちらです。
MQL4とMQL5では、開発環境も
異なるのでちょっと問題です。

ソースをMQL4とMQL5にコピーするのでは
間違うリスクがでかすぎます。

せっかく苦労して一元化しても
ヒューマンエラーのリスクに
常にさらされます。

てか、その状態で間違わないのは「無理」です。

・・・・

でググったところ解決策がありました。

 

ショートカットによる共用

 

(FX)MQL4とMQL5の両方で動作するファイルを共有する方法

以下のようにソースのショートカットを作成しMQL4から閲覧する

なるほどすばらしい。

と思いやってみた。

こんな感じでショートカットを作ったのだが
MQLのエディタからクリックしても
開いてくれない。

MQL4、MQL5の両方でやったが
うまく行かないので
諦めました。

わかる方教えてください。

 

MQL5ストレージ

で、手作業でのコピペは流石に危険なので

MQL5 ストレージ

を使用することにする。

ソース管理ツールだ。

恥ずかしながら私は、Githubを使えていません。

Subversionなら10数年前にちょっと使ったことはあります。
*ここでソース管理ツールについては止まっているのです^^

なんとなくできそうなのでクリックしました。

Setp1.
ナビゲーターウインドウを開き
MQL5ストレージを有効にしました。

 

すばらしい、
これで安定してソース管理が行える。
今までのコピペ管理が嘘のようだ。

早くやればよかった。

差分の表示方法

 

Step1.
①差分を見たいソースを右クリックし「ストレージログを表する」をクリックする

Step2.
①差分を確認したいリビジョンのソースをクリックする。

Step3.

①ソースを右クリックする
②「以前の改訂と比較する」をクリックする

Step4.

差分がわかりやすく表示されます。

 

 

これでokです。

 

後は、物理的にファイルをコピーするのではなく

エディタを開いて全選択コピペを
行えばok

 

最後までご覧いただきありがとうございます。

つぎはこちら

プラス、マイナス決済 ショート、ロング決済の追加
ProConX機能強化の一覧 プラス、マイナス決済と ショート、ロング決済を追加してほしいという 依頼がありました。 簡単にできそうなので挑戦。 しかしながら問題は、表示とボタンを追加すると UIが長...

⇒「ついに販売!?プロコントローラーX」(閉鎖中)

ProConX MT5対応の一覧

コメント

タイトルとURLをコピーしました