EAラボラトリーフォーラム::FXシステムトレード情報満載のコミュニティサイト

ユーザー登録    ログイン    フォーラム    検索    FAQ

掲示板トップ » Engineer


フォーラムルール


営利目的の書き込みは禁止です。ツールやEAなどの添付はここでは禁止です。(専用のフォーラムを用意してあります) あくまでも交流を目的としたフォーラムであることを忘れずに。



新しいトピックを投稿する トピックへ返信する  [ 4 件の記事 ] 
作成者 メッセージ
 記事の件名: 最適化の1つの実行を途中で終了させる方法
 投稿記事 Posted: 2011年2月13日(日) 12:08 
オフライン
Hランク
Hランク

登録日時: 2010年11月30日(火) 22:44
記事: 46
お住まい: 横浜
お世話になっております。

【質問概要】
EAを、途中で終了させるようコーディングすることは出来ますでしょうか。

【質問背景】
現在、自作EAの最適化を行なっております。
実現したい事としては、
不正なパラメータの組合せの場合は、そこでそのパラメータでのバックテストの実行を終了し、
次のパラメータでのバックテストに移ってもらいたいのです。

【実施してみたこと】
init()内で「不正な条件の場合にreturn;」を入れました。

が、init()が終わってしまっただけで、そこでEAは終わらず、
start()がTickの更新ごとに呼ばれ続ける、という動きをしました。
しょうがないのでstart()の冒頭で、不正の場合はreturnする、を入れ込みましたが、
指定時間の間は動いてしまうので無駄な時間動いてしまいます。

色々ネットで調べてみたのですが、見つからないのでご教授頂けないでしょうか。
宜しくお願いいたします。


ページトップ 
 プロフィール  
 
 記事の件名: Re: 最適化の1つの実行を途中で終了させる方法
 投稿記事 Posted: 2011年2月14日(月) 02:36 
オフライン
グローバルモデレータ
アバター

登録日時: 2009年5月28日(木) 15:21
記事: 646
ウェブサイト: http://www.ea-labo.com
ea内部からテスターをコントロールすることは出来ないと思います。ですから最適化の1つの実行を途中で終了させる方法はMetaTrader単体では不可能と思います。
『不正なパラメータ』というものがどのように不正なのかがわからないのですが、そうならないようにオプティマイズ用のパラメータを用意して、同間隔でのStepに応じたパラメータ群の変換を入れることは難しいのでしょうか?

P.S..このトピックはengineerトピックに移動しますね


ページトップ 
 プロフィール WWW  
 
 記事の件名: Re: 最適化の1つの実行を途中で終了させる方法
 投稿記事 Posted: 2011年2月14日(月) 12:39 
オフライン
Hランク
Hランク

登録日時: 2010年11月30日(火) 22:44
記事: 46
お住まい: 横浜
それであれば、バックテスト用に例えばint型の『OptiSetting』という公開変数を用意して、その値を変化させると他のパラメータがまとめて変化するようにstart()関数の中でプログラムします。そのプログラムの中で、『A > B > C』となるように『OptiSetting』の同間隔ステップに対応させたA,B,Cのパラメータ群をあらかじめ用意すればよいと思います。
バックテストでは、『OptiSetting』のみにOptimizeをかけます。


最後に編集したユーザー engineeeer [ 2011年2月15日(火) 00:52 ], 累計 2 回
間違ってinumart研究員の書き込みを書き変えて私の発言としてしまいました。大変失礼いたしました。by engineeeer


ページトップ 
 プロフィール  
 
 記事の件名: Re: 最適化の1つの実行を途中で終了させる方法
 投稿記事 Posted: 2011年2月15日(火) 00:00 
オフライン
Hランク
Hランク

登録日時: 2010年11月30日(火) 22:44
記事: 46
お住まい: 横浜
engineeeer さんが書きました:
それであれば、バックテスト用に例えばint型の『OptiSetting』という公開変数を用意して、その値を変化させると他のパラメータがまとめて変化するようにstart()関数の中でプログラムします。そのプログラムの中で、『A > B > C』となるように『OptiSetting』の同間隔ステップに対応させたA,B,Cのパラメータ群をあらかじめ用意すればよいと思います。
バックテストでは、『OptiSetting』のみにOptimizeをかけます。


なるほど・・・よーく分かりました!
EAプログラミング以前の、工夫する力量の問題ですね。。。
”EA側からテスターを制御するのは無理”ということと、上記問題解決の答えを頂けて良かったです。
ありがとうございました!


ページトップ 
 プロフィール  
 
期間内表示:  ソート  
 
新しいトピックを投稿する トピックへ返信する  [ 4 件の記事 ] 

掲示板トップ » Engineer


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[1人]

 
 

 
トピック投稿: 不可
返信投稿: 不可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  

Protected by Anti-Spam ACP
Japanese translation principally by ocean