にゃーん。かわいい・・・!
AutoOrderModifyシリーズバージョンアップ
不具合修正です。
AutoOrderModifyシリーズ・ScalTradeAssistデモ版配布
デモ版の準備&公開しました。
DLMarketでもデモ版配布を開始しています。
DLMarketでは今後、販売縮小していく方向です。(無料版・デモ版のみとする予定)
MT4「秒足チャートインジケーター」デモ版公開
秒足チャートインジケーターはデモ版に入れてなかったのですが、取り急ぎライセンス処理を埋め込んでリリースしました。
MT4(MQL4)標準のWebRequest関数がインジケーターでは使えないという問題をクリアするため、WindowsのDLL(wininet.dll)を使用しています。
The WebRequest() function is synchronous, which means its breaks the program execution and waits for the response from the requested server. Since the delays in receiving a response can be large, the function is not available for calls from the indicators, because indicators run in a common thread shared by all indicators and charts on one symbol. Indicator performance delay on one of the charts of a symbol may stop updating of all charts of the same symbol.
WebRequest関数をインジケーターから呼び出したら問題が発生する可能性があるという言い分はわかるのですが、なぜ「使用不可」とまでしてしまうのでしょうか‥。
たとえば最初の初期化処理に1度呼び出すだけであれば、あまり問題にならないと思うのですが‥。問題が発生するかどうかは使用用途やタイミングによるのではないか?危険性があるからといって一律禁止にしてしまう対応に疑問を持っています‥。
‥と、そのようなわけで仕方なくDLLを使用したというわけです。
ScalTradeAssistProやAutoOrderModifyについても今後、この作りにする予定です。(一本化したほうが管理し易いことと、「DLLを許可する」にチェックをつけるだけの方がお客様も楽だろうと思ったからです。)
MQLでwininet.dllを使う
DLLの使用法は以下のページに書かれていました。
インターネットを介して端末間でデータ交換をするためのWININET.DLL利用
が、うまく動いてくれず。半日悩みましたが諦めて、fx-onのweb認証をパクッ・・・・いや、参考にして作りました。1時間くらいでサクッとできちゃいました。最初からこっちを試すべきでしたね‥。
ここにweb認証の方式を書くわけにはいかないと思うので・・知りたい方はfx-onの販売者に登録してテキトウに商品を登録(公開する必要はありません)してWeb認証のソースコードを埋め込む画面でソースコードを確認してください。
WildCatSniperの検証
製品開発の片手間でWildCatSniperの最適化を試していました。
ストップロス値を小さくする
対象の通貨ペアはEURAUDでストップロスを小さくすることが目標です。まずは単純にStopLossの値を小さくしてみます。
(期間は2005年~ スプレッドは30、Alpariのヒストリカルデータです)
StopLossを40pipsにする程度であれば、そんなに大きな影響は出ませんが・・できれば20pipsくらいにしたいと思っていました。
しかし、そうするとPFは1.55まで下がり、損益は半分以下になります。
ストップロス20で利益を増やせる?
当EAは「仕掛けを遅くする」ことでPFを上げられます。(買われすぎ/売られすぎの状態が、より顕著な状態で仕掛ける)
ただし、遅くするとトレード回数が少なくなります。
PF1.8程度にしようとすると、取引回数は千回程度まで減少しました。これだとほとんど取引してくれないと思います‥。(リアルではスプレッドが広がっている時間が多いため、取引回数はバックテストよりも大きく減少してしまいます)
そこで稼働時間をのばして以下のようにしてみました。
これなら素直にStopLossを30にした方が良いような…?;;
パラメーターでどうにかするのはここまででしょうか。(最初からパラメーターだけでどうにかしようとは思っていませんでしたが)
来週はロジックの改善をする予定です。
改善できるかどうかわかりませんが‥。結果がでるかどうか、やってみなければわかりません。
普通の(ScalTradeAssistProやAutoOrderModifyなども含めた)プログラムは「これで完成」という形が最初から決まっているので、それに向かって作っていけばいいのですけど。
その「完成形」が見えないのがEA開発の辛い所‥だと思っています。(いつできるのか、とか、改善できるのか?と聞かれても「わからない」としか私には答えられないです‥。一応「今のところ、案はいくつかある」ものの、それが実際に効果があるかどうかはやってみないとわかりません‥。)
今週は以上です。(普段は土曜日に更新しているのですが、今週の土曜日は用事があって更新できるかどうかわからないので一日早く更新しました。)
コメント