MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 45

 
Vitalie Postolache:
何が大変なんだ?いつもそうなんです。
やったことないからわからないけど。コードベースからランダムにボットを取り出し、同じセグメントで実行すると、何か動作するのですが、このボットは起動時に死ぬだけです。コードが動作することは確認でき、前のエラーも修正しましたが、何も文句はなく、コンパイラは悪態をつきません。でも、タスクマネージャで端末を強制終了するのは面倒だし、意味もない。バグを発見して修正するのも簡単です。
 

trader781:
Ну не знаю, я раньше ими не занимался.  Если брать случайного бота из кодебазы и прогнать по тем же отрезкам, то он что - то будет делать, этот же просто дохнет при запуске, хотя смотришь - вроде код рабочий и прошлую ошибку я поправил, придраться особо не к чему и компилятор не ругается. Но убивать терминал через диспетчер задач надоедает, да и смысла нет. Проще найти косяк и исправить.

Expertsタブのログはどうなっているのでしょうか?それともテスターログ?
 
Vitalie Postolache:
Expert Advisorsタブのログはどうなっているのか?それともテスターのログ?

それ以外怪しいものはない

デモで走らせ、動作させてみて、もし直らなかったら、その理由をお知らせします。

takeパラメータは依然として完全に無視される

ゼロでない場合は、エラーを表示するか、または、次のように設定します。
 
trader781:

それ以外怪しいものはない

デモで走らせ、動作させてみて、もし直らなかったら、その理由をお知らせします。

これまでのところ、takeパラメータは完全に無視されています。

もし0に等しくない場合は、失敗するか、設定する必要があります。
テスターは注文を受け付けていますか?最低でも1つは開くのでしょうか?ログにエラーは出ていないのでしょうか?エラーコードと 取引関数に 渡される計算パラメータを印刷する必要があります。そうすることで、ロジックエラーをより簡単にキャッチできます。
 
Vitalie Postolache:
テスターで注文を開けるのですか?1つでも開くのか?ログにエラーはないか?エラーコードと 取引関数に 渡される計算パラメータを印刷する必要があります。そうすることで、ロジックエラーを簡単にキャッチできます。
ストラテジーテスターでエラーが発生し、ログにエラーコードが出力されました。ストラテジーテスターでは、1つの注文が開き、次に2つ目の注文が開き、そしてハングアップします。
 
trader781:
テスターでは、1つを開いてから2つ目を開いてハングアップ、デモでも2つ目を開いた後、CPU負荷が29%になり、ハングアップするまで増大している
ログはどこにある?奇跡は起きない。
 
Vitalie Postolache:
ログはどこですか?奇跡はない。
2016.12.22 22:16:32.249 '14041396': 注文 #161405291 売り 0.01 AUDUSD at 0.72067 sl: 0.00000 tp: 0.00000 価格 0.72116 でクローズしました。
2016.12.22 22:16:32.162 '14041396': close order #161405291 sell 0.01 AUDUSD at 0.72067 sl: 0.00000 tp: 0.00000 at price 0.72116.
2016.12.22 22:16:31.507 '14041396': 注文 #161415692 売り 0.02 AUDUSD at 0.72086 sl: 0.00000 tp: 0.00000 価格 0.72115 でクローズしました。
2016.12.22 22:16:31.278 '14041396': close order #161415692 sell 0.02 AUDUSD at 0.72086 sl: 0.00000 tp: 0.00000 at price 0.72115.
2016.12.22 22:16:17.002 Expert count AUDUSD,M5:削除しました。

2016.12.22 22:16:32.249 '14041396': 注文 #161405291 売り 0.01 AUDUSD at 0.72067 sl: 0.00000 tp: 0.00000 価格 0.72116 でクローズしました。

2016.12.22 22:16:32.162 '14041396': close order #161405291 sell 0.01 AUDUSD at 0.72067 sl: 0.00000 tp: 0.00000 at price 0.72116.

2016.12.22 22:16:31.507 '14041396': 注文 #161415692 売り 0.02 AUDUSD at 0.72086 sl: 0.00000 tp: 0.00000 価格 0.72115 でクローズしました。

2016.12.22 22:16:31.278 '14041396': close order #161415692 sell 0.02 AUDUSD at 0.72086 sl: 0.00000 tp: 0.00000 at price 0.72115.

2016.12.22 22:16:17.002 Expert count AUDUSD,M5:削除しました。


(ターミナルストップで削除、既存注文は手動で消去、1ログ秒のエキスパートタブ)


 
mila.com:

最初のクローズドバーH1で、インジケータの値が必要です。

だから、いつものを手に入れよう。
 
trader781:

(端末のシャットダウンで削除、既存の注文は手動でカバー、1ログ2エキスパートタブ)

私が知っている最後のバリエーションを取り、最も目立つバグを修正しましたが、オーダーは1つしか開かず、それで終わりです。このEAのロジックは全般的によくわからない、変な書き方ばかり。

一般的には、次のステップが明確であることを望みます。 見つかるもの、見つからないもの、ロジックエラーをキャッチするもの全てに対して、コードを埋めなければならないし、複数あるかもしれないのです。もっとたくさん。

ファイル:
count.mq4  17 kb
 
Vitalie Postolache:


ありがとうございます、どうすればいいのかがよくわかりました

そして、ポイントはシンプルです。

- 命令を出す

- りえきしんごう

- 価格が下がったら、平均的な価格で詰め替えたステップの後に2つ目を開く

- 出て行く

- 1つのテイクでトリガーがかかった場合は、すべて閉じます。

あなたが捨てたのを実行しただけなので、本当です)ほとんどすべてのコードは無視されます。