初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 555 1...548549550551552553554555556557558559560561562...1503 新しいコメント 削除済み 2016.04.04 06:42 #5541 Alexey Viktorov:その主張を読みました。しかし、それは議論ではなく、説明を理解しようとせず、端末の非を証明しようとしたに過ぎないのです。あなたの言葉には、何の裏付けもありませんでした。スクリーンショットを作って、自分の考えを明確に説明するのが面倒なんでしょ う。 スクリーンショットってなんだ!?コードを提供しましたが、MT4で動作しており、MT5ではクラッシュします。エラーの種類は、コメントアウトされたコードにも書かれています。 Alexey Viktorov 2016.04.04 06:48 #5542 comp: スクリーンショットって何だ!?提供されたコードでは、MT4で動作し、MT5ではエラーでクラッシュします。エラーの種類は、コメントアウトされたコードにも書かれています。それでいいんです。それは、あなたの視点です。みんな自分の主張を理解するために何かしないといけないと思ってるんだろうけど、反論しない方が楽だし、要求が多すぎてBANされた方が本当に楽だと思ってないんだろうね。私は幸いにも 禁止する権利を持っていないので、この対話を止めるだけです。 削除済み 2016.04.04 09:56 #5543 注文が開始されない理由を教えてくださいvoid OnTick() { int pos; int rsi; int uroven1; int uroven2; int kolpos; uroven1=RSI_uroven1; uroven2=RSI_uroven2; rsi=iRSI(Symbol(),0,RSI,0,1); //================================================================== for(int pos=0; pos<OrdersTotal(); pos++) { OrderSelect(pos,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic) kolpos++; } //==================================================================== if(kolpos==0) { if(rsi>uroven1 || rsi<uroven1 || rsi>uroven2 || rsi<uroven2) { OrderSend(Symbol(),OP_BUY,Lot,Ask,30,0,0,"",Magic,0,clrAliceBlue); OrderSend(Symbol(),OP_SELL,Lot,Bid,30,0,0,"",Magic,0,clrRed); } } } 注文が開始されない理由を教えてください。 Vladislav Andruschenko 2016.04.04 10:01 #5544 edutak: 注文が開始されない理由を教えてください。少なくとも4つのエラーがあります'RSI_uroven1' - 未宣言の識別子 32.mq4 13 12'RSI_uroven2' - 未宣言の識別子 32.mq4 14 12'RSI' - 未宣言識別子 32.mq4 16 24'pos' - 変数がすでに定義されている 32.mq4 19 12//+------------------------------------------------------------------+ //| ProjectName | //| Copyright 2012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ #property strict int RSI=23; int RSI_uroven1=100; int RSI_uroven2=100; int Magic=777; double Lot=0.1; void OnTick() { int pos; int rsi; int uroven1; int uroven2; int kolpos; uroven1=RSI_uroven1; uroven2=RSI_uroven2; rsi=iRSI(Symbol(),0,RSI,0,1); //================================================================== for(int pos=0; pos<OrdersTotal(); pos++) { OrderSelect(pos,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic) kolpos++; } //==================================================================== if(kolpos==0) { if(rsi>uroven1 || rsi<uroven1 || rsi>uroven2 || rsi<uroven2) { OrderSend(Symbol(),OP_BUY,NormalizeDouble(Lot,2),Ask,30,0,0,"",Magic,0,clrAliceBlue); OrderSend(Symbol(),OP_SELL,NormalizeDouble(Lot,2),Bid,30,0,0,"",Magic,0,clrRed); } } } //+------------------------------------------------------------------+ все октрывает 1 2015.01.02 09:00 buy 1 0.10 120.42 0.00 0.00 0.00 10000.00 2 2015.01.02 09:00 sell 2 0.10 120.39 0.00 0.00 0.00 10000.00 3 2016.04.04 13:08 close at stop 2 0.10 111.66 0.00 0.00 3.26 10003.26 4 2016.04.04 13:08 close at stop 1 0.10 111.63 0.00 0.00 -11.85 9991.41 Vitalii Ananev 2016.04.04 10:04 #5545 edutak: 注文が開けない理由を教えてください。まず最初に、注文数をカウントする正常な関数をお教えしましたが、あなたはまだ間違った関数を使い続けています。次に if(rsi>uroven1 || rsi<uroven1 || rsi>uroven2 || rsi<uroven2) の条件が相互に矛盾している場合です。 削除済み 2016.04.04 10:13 #5546 Vitalii Ananev:まず最初に、注文数をカウントする正常な関数をお教えしましたが、あなたはまだ間違った関数を使い続けています。次に if(rsi>uroven1 || rsi<uroven1 || rsi>uroven2 || rsi<uroven2) の条件が相互に矛盾している場合です。普通の機能を使います。これはテスター用のとりあえずの下書きです。ブロック単位でコピーするだけなので、その方が早いです。もし、あるレベルのRSIを超えたら注文が開き、他のレベルを超えたら - それは閉じられ、すぐに別の注文が開かれるなら、矛盾はないでしょう。それとも、あるのでしょうか? 削除済み 2016.04.04 10:18 #5547 Vladislav Andruschenko:少なくとも4つのエラーがあります'RSI_uroven1' - 未宣言の識別子 32.mq4 13 12'RSI_uroven2' - 未宣言の識別子 32.mq4 14 12'RSI' - 未宣言識別子 32.mq4 16 24'pos' - 変数がすでに定義されている 32.mq4 19 12 ありがとうございます、うまくいきました。 Vitalii Ananev 2016.04.04 10:27 #5548 edutak:普通の機能を使います、これはテスター用のとりあえずのラフ案です。ブロック単位でコピーするだけです、その方が早いです。RSIがいずれかのレベルを超えたら注文を開き、他のレベルを超えたら閉じてすぐに別の注文を開くのであれば、矛盾は生じません。それとも、あるのでしょうか?ただ、考えてみてください。uroven1 = 80; rsi = 30とする。rsi > 80またはrsi < 80という条件は、(30 > 80 [false] または 30 < 80 [true] )が自然界に存在しないことを意味する。OR演算子を使っているので条件は真になりますが、本質的には意味がありません。Suppose uroven2 = 20; rsi = 30 (30 > 20 [true] or 30< 20[false] ) という式の後半部分がそうである。 削除済み 2016.04.04 10:52 #5549 Suppose uroven2 = 20; rsi = 30 (30 > 20 [true] or 30< 20[false] ) という式の後半部分がそうである。またはと書いたのは、任意のレベルクロスで、注文が開かれるという意味です。2つ目の条件30<20[false]が発生すると、その時点で前回の注文は終了し、trueになる。私の理解が正しければ 削除済み 2016.04.04 10:57 #5550 もし、あなたが正しいことがわかったら、2つ目のRSIを追加するつもりです。 1...548549550551552553554555556557558559560561562...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
その主張を読みました。しかし、それは議論ではなく、説明を理解しようとせず、端末の非を証明しようとしたに過ぎないのです。あなたの言葉には、何の裏付けもありませんでした。スクリーンショットを作って、自分の考えを明確に説明するのが面倒なんでしょ う。
スクリーンショットって何だ!?提供されたコードでは、MT4で動作し、MT5ではエラーでクラッシュします。エラーの種類は、コメントアウトされたコードにも書かれています。
それでいいんです。それは、あなたの視点です。みんな自分の主張を理解するために何かしないといけないと思ってるんだろうけど、反論しない方が楽だし、要求が多すぎてBANされた方が本当に楽だと思ってないんだろうね。
私は幸いにも 禁止する権利を持っていないので、この対話を止めるだけです。
注文が開始されない理由を教えてください。
少なくとも4つのエラーがあります
'RSI_uroven1' - 未宣言の識別子 32.mq4 13 12
'RSI_uroven2' - 未宣言の識別子 32.mq4 14 12
'RSI' - 未宣言識別子 32.mq4 16 24
'pos' - 変数がすでに定義されている 32.mq4 19 12
все октрывает
1 2015.01.02 09:00 buy 1 0.10 120.42 0.00 0.00 0.00 10000.00 2 2015.01.02 09:00 sell 2 0.10 120.39 0.00 0.00 0.00 10000.00 3 2016.04.04 13:08 close at stop 2 0.10 111.66 0.00 0.00 3.26 10003.26 4 2016.04.04 13:08 close at stop 1 0.10 111.63 0.00 0.00 -11.85 9991.41
注文が開けない理由を教えてください。
まず最初に、注文数をカウントする正常な関数をお教えしましたが、あなたはまだ間違った関数を使い続けています。
次に if(rsi>uroven1 || rsi<uroven1 || rsi>uroven2 || rsi<uroven2) の条件が相互に矛盾している場合です。
まず最初に、注文数をカウントする正常な関数をお教えしましたが、あなたはまだ間違った関数を使い続けています。
次に if(rsi>uroven1 || rsi<uroven1 || rsi>uroven2 || rsi<uroven2) の条件が相互に矛盾している場合です。
普通の機能を使います。これはテスター用のとりあえずの下書きです。ブロック単位でコピーするだけなので、その方が早いです。
もし、あるレベルのRSIを超えたら注文が開き、他のレベルを超えたら - それは閉じられ、すぐに別の注文が開かれるなら、矛盾はないでしょう。
それとも、あるのでしょうか?
少なくとも4つのエラーがあります
'RSI_uroven1' - 未宣言の識別子 32.mq4 13 12
'RSI_uroven2' - 未宣言の識別子 32.mq4 14 12
'RSI' - 未宣言識別子 32.mq4 16 24
'pos' - 変数がすでに定義されている 32.mq4 19 12
普通の機能を使います、これはテスター用のとりあえずのラフ案です。ブロック単位でコピーするだけです、その方が早いです。
RSIがいずれかのレベルを超えたら注文を開き、他のレベルを超えたら閉じてすぐに別の注文を開くのであれば、矛盾は生じません。
それとも、あるのでしょうか?
ただ、考えてみてください。uroven1 = 80; rsi = 30とする。rsi > 80またはrsi < 80という条件は、(30 > 80 [false] または 30 < 80 [true] )が自然界に存在しないことを意味する。OR演算子を使っているので条件は真になりますが、本質的には意味がありません。
Suppose uroven2 = 20; rsi = 30 (30 > 20 [true] or 30< 20[false] ) という式の後半部分がそうである。
Suppose uroven2 = 20; rsi = 30 (30 > 20 [true] or 30< 20[false] ) という式の後半部分がそうである。
またはと書いたのは、任意のレベルクロスで、注文が開かれるという意味です。2つ目の条件30<20[false]が発生すると、その時点で前回の注文は終了し、trueになる。
私の理解が正しければ