MT4 Java API - ページ 2

 
MQ4のEAがアーカイブにないのですが、ご自分で書かれたものなのでしょうか?
 
TsaiShenYeh >> :
MQ4のEAがアーカイブになかったのですが、自分で書いたものなのでしょうか?

あるんだけど、深く隠れている。JFXExample (jfx-1.2.3examples}README.TXT を実行すると C:\Users<user>***.jfx_terminals (Vista) が作成されます。

またはC:Documents and Settings<user>***.jfx_terminals (XP)-にあります。

ファイル:
jfx.ex4  49 kb
 
+ DLL
 

 

質の高い仕事がたくさん行われていることがわかります。しかし、ここで戸惑うことがあります。

javaに不慣れなプログラマーは、EA開発には欠かせない使い慣れたストラテジーテスターを すぐに手放して、「未知の」javaでのEA書き換えに走ることはないでしょう。

しかし、javaに慣れた人は、必要なときにjavaで簡単に書き換えることができるのに、なぜMTからプリミティブなインテクタを呼び出す必要があるのかと思うかもしれない。

私の考えでは、javaは大規模で複雑なストラテジーを開発し、プログラマーの全神経をそこに集中させるために使われるべきものです。

このAPIで気になったのは、ストラテジーの実体がEAの実体と同一視されていることです。私の考えでは、これは同じことではありません。

EAにはTraderというエンティティがあり、TraderがStrategyというエンティティを使ってデータを分析し、意思決定をしているイメージです。そして、Strategyインターフェイスだけは、Javaで実装することに意味があるのです。

私は、次のようなインターフェースStrategyを提案します。

public interface Strategy {
public abstract boolean canBuy();
public abstract boolean canSell();
public abstract boolean educate(DataLoader educationDataLoader);
public abstract boolean updateStrategy(PeriodInputValues rateM1);
} (以下、本項目と同じ。


 

ご提案ありがとうございます。

とりあえず、MT4 Testerで動作するバージョンのライブラリは提案できます。

ファイル:
jfxd1.2.4.zip  3615 kb
 
MT4 Testerの追加例とスクリーンショットを含む
ファイル:
 
soulmate >> :

このAPIで気になったのは、ストラテジーの実体がEAの実体と同一視されることです。同じものではないと思うんです。


その通り、StrategyクラスをMT4ExpertAdvisorにリファクタリングして、本来の目的に使えるようにすべきだったかもしれませんが、残念ながら列車は出航してしまい、このプロジェクトは他のプロジェクトの一部になってしまい、変更することができません。

 
 

すべて有料なのでしょうか?