エキスパート: Diff_TF_MA_EA - ページ 3 12345 新しいコメント fxsaber 2018.02.02 09:31 #21 Rashid Umarov: コードが更新された。どうやら、このような書き方をするのは、ある種の流儀のようだ int total=PositionsTotal(); for(int i=total-1; i>=0; i--) { ulong ticket=PositionGetTicket(i); if(ticket==0) continue; if(PositionGetInteger(POSITION_MAGIC)!=InpMagic) continue; if(PositionGetString(POSITION_SYMBOL)!=symb) continue; ENUM_POSITION_TYPE type=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); double volume=PositionGetDouble(POSITION_VOLUME); if(type==POSITION_TYPE_BUY) { list_tickets_buy.Add(ticket); total_volume_buy+=volume; } else if(type==POSITION_TYPE_SELL) { list_tickets_sell.Add(ticket); total_volume_sell+=volume; } } なぜこう書かない? for(int i=PositionsTotal()-1; i>=0; i--) if (PositionGetTicket(i) && (PositionGetInteger(POSITION_MAGIC)==InpMagic) && (PositionGetString(POSITION_SYMBOL)==symb)) { double volume=PositionGetDouble(POSITION_VOLUME); if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY) { list_tickets_buy.Add(ticket); total_volume_buy+=volume; } else { list_tickets_sell.Add(ticket); total_volume_sell+=volume; } }ZYCorrectStopLoss(POSITION_TYPE_BUY,InpStopLoss) Artyom Trishkin 2018.02.02 09:34 #22 fxsaber:どうやら、そう書くのがある種の流儀のようだ。 なぜこう書かないのか? ベースにコードが必要なのは、論理的な推理や何百倍もの入れ子のためではなく、初心者が理解するためだからだろうか? Artyom Trishkin 2018.02.02 09:35 #23 fxsaber:... ZYCorrectStopLoss(POSITION_TYPE_BUY,InpStopLoss)何が違うんだ?コードを見ていないのですが、そのようなタイプミスがあるのでしょうか、それともそれが質問なのでしょうか? fxsaber 2018.02.02 09:36 #24 Artyom Trishkin: コードがベースに必要なのは、論理的な推理や何百倍もの入れ子のためではなく、初心者が理解するためだからではないだろうか?反転はどこにあるのか?あるポジションが条件を満たせば、それを扱う。continue - 出力。 fxsaber 2018.02.02 09:43 #25 Artyom Trishkin:違いはありますか?コードを見ていないのですが、そのようなタイプミスがあるのでしょうか、それともそれが質問なのでしょうか?//+------------------------------------------------------------------+ //| StopLevelに対する正しいStopLossを返します。 //+------------------------------------------------------------------+ double CorrectStopLoss(const ENUM_POSITION_TYPE position_type,const int stop_loss) { if(stop_loss==0) return 0; double pt = _Point; double price=(position_type==POSITION_TYPE_BUY ? SymbolInfoDouble(_Symbol,SYMBOL_ASK) : SymbolInfoDouble(_Symbol,SYMBOL_BID)); int lv=StopLevel(); return(NormalizeDouble((position_type==POSITION_TYPE_BUY) ? fmin(price-lv*pt,price-stop_loss*pt) : fmax(price+lv*pt,price+stop_loss*pt),_Digits)); } Artyom Trishkin 2018.02.02 09:47 #26 fxsaber:ひねりはどこに?あるポジションが条件を満たせば、私たちはそれで仕事をする。陽動作戦だああ...誰かの好みなんですね。 例えば、イゴール・キムのコードにはそのような入れ子がある。そのようなコードは、よりコンパクトに書くことができる(簡潔さに執着するあなたが、コードをきれいにしてより図解的にすることで簡単に回避できるコードブロックの複数の入れ子を提案するのは奇妙だ): あなたはこのようなロジックを提案している: 条件1をチェックする。条件2をチェックする。条件3をチェックする。条件4をチェックする。仕事条件4チェックブロック終了条件3チェックブロック終了条件チェックブロック2終了条件1チェックブロック終了あるいは、このようにすることもできる: 条件1が合わない-不要条件2が合わない - 必要なし条件3が合わない-不要条件4が合わない - 必要ない条件4が合わない - 必要ない。2番目のコードはより明確で短い Artyom Trishkin 2018.02.02 09:52 #27 fxsaber: //+------------------------------------------------------------------+ //| StopLevelに対する正しいStopLossを返します。 //+------------------------------------------------------------------+ double CorrectStopLoss(const ENUM_POSITION_TYPE position_type,const int stop_loss) { if(stop_loss==0) return 0; double pt = _Point; double price=(position_type==POSITION_TYPE_BUY ? SymbolInfoDouble(_Symbol,SYMBOL_ASK) : SymbolInfoDouble(_Symbol,SYMBOL_BID)); int lv=StopLevel(); return(NormalizeDouble((position_type==POSITION_TYPE_BUY) ? fmin(price-lv*pt,price-stop_loss*pt) : fmax(price+lv*pt,price+stop_loss*pt),_Digits)); } どうしたんですか?以前のような質問がないように修正したのでしょう。 しかし、今、誰かがExpert Advisorをペンディング注文で動作するように変更しようとすると、入力列挙でエラーが発生するため、前後に変更する必要があります。 そして、ORDER_TYPE_BUY == POSITION_TYPE_BUYとORDER_TYPE_SELL ==POSITION_TYPE_SELLは 0と1です。つまり、違いはない。しかし、ENUM_ORDER_TYPEを入力することで、他のタイプの注文の修正が容易になります。 fxsaber 2018.02.02 09:52 #28 Artyom Trishkin:ああ。それは誰かの好みだよ。例えば、イゴール・キムのコードにはそのような入れ子がある。そのようなコードは、よりコンパクトに書くことができる(簡潔さに執着するあなたが、コードをすっきりさせ、より図解的なものにすることで簡単に避けられるコードブロックの複数の入れ子を提案するのは奇妙なことだ):あなたはこのような論理を提案している:条件1をチェックする。条件2をチェックする。条件3をチェック、適合条件4をチェックする。作業中条件4チェックブロック終了条件3チェックブロック終了条件チェックブロック2終了条件チェックブロック1終了こんなものは見せていなかった。当時は厳密な指示がなかったため、キムはそうせざるを得なかった。 彼はこんな選択肢を提案した: こうすればいい: 条件1が合わない-必要ない条件2が合わない-必要ない条件3が合わない-必要ない条件4が合わない - 必要ない条件4が合わない - 必要ない。2番目のコードはより明確で短い Artyom Trishkin 2018.02.02 09:54 #29 fxsaber:そんなものは見せていない。当時は指示がなかったから、キムはそうせざるを得なかった。それが彼の提案だこれは? 取引、自動取引システム、取引戦略のテストに関するフォーラム。 エキスパートアドバイザー:Diff_TF_MA_EA fxsaber, 2018.02.02 09:36. 反転はどこ?ポジションが条件を満たしている場合、それに取り組みます。もしポジションが条件を満たしていれば、それに取り組む。 Artyom Trishkin 2018.02.02 09:57 #30 fxsaber:そんなものは見せていない。当時は指示がなかったから、キムはそうせざるを得なかった。不思議なもので、当時、私はどうやって厳しくなく継続的に仕事をすることができたのだろう?私だけではなく、当時はヴィーチャ・ニコラエフ(ヴィニン)からもそうするように言われていた。 だから、このコードとそれを書いたプログラマーに対するあなたの不満が理解できない。 12345 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
コードが更新された。
どうやら、このような書き方をするのは、ある種の流儀のようだ
ZY
CorrectStopLoss(POSITION_TYPE_BUY,InpStopLoss)どうやら、そう書くのがある種の流儀のようだ。
なぜこう書かないのか?...
ZY
CorrectStopLoss(POSITION_TYPE_BUY,InpStopLoss)何が違うんだ?コードを見ていないのですが、そのようなタイプミスがあるのでしょうか、それともそれが質問なのでしょうか?
コードがベースに必要なのは、論理的な推理や何百倍もの入れ子のためではなく、初心者が理解するためだからではないだろうか?
反転はどこにあるのか?あるポジションが条件を満たせば、それを扱う。continue - 出力。
違いはありますか?コードを見ていないのですが、そのようなタイプミスがあるのでしょうか、それともそれが質問なのでしょうか?
ひねりはどこに?あるポジションが条件を満たせば、私たちはそれで仕事をする。陽動作戦だ
ああ...誰かの好みなんですね。
例えば、イゴール・キムのコードにはそのような入れ子がある。そのようなコードは、よりコンパクトに書くことができる(簡潔さに執着するあなたが、コードをきれいにしてより図解的にすることで簡単に回避できるコードブロックの複数の入れ子を提案するのは奇妙だ):
あなたはこのようなロジックを提案している:
あるいは、このようにすることもできる:
2番目のコードはより明確で短い
fxsaber:
どうしたんですか?以前のような質問がないように修正したのでしょう。
しかし、今、誰かがExpert Advisorをペンディング注文で動作するように変更しようとすると、入力列挙でエラーが発生するため、前後に変更する必要があります。
そして、ORDER_TYPE_BUY == POSITION_TYPE_BUYとORDER_TYPE_SELL ==POSITION_TYPE_SELLは 0と1です。つまり、違いはない。しかし、ENUM_ORDER_TYPEを入力することで、他のタイプの注文の修正が容易になります。
ああ。それは誰かの好みだよ。
例えば、イゴール・キムのコードにはそのような入れ子がある。そのようなコードは、よりコンパクトに書くことができる(簡潔さに執着するあなたが、コードをすっきりさせ、より図解的なものにすることで簡単に避けられるコードブロックの複数の入れ子を提案するのは奇妙なことだ):
あなたはこのような論理を提案している:
こんなものは見せていなかった。当時は厳密な指示がなかったため、キムはそうせざるを得なかった。
彼はこんな選択肢を提案した:
こうすればいい:
2番目のコードはより明確で短い
そんなものは見せていない。当時は指示がなかったから、キムはそうせざるを得なかった。
それが彼の提案だ
これは?
取引、自動取引システム、取引戦略のテストに関するフォーラム。
エキスパートアドバイザー:Diff_TF_MA_EA
fxsaber, 2018.02.02 09:36.
反転はどこ?ポジションが条件を満たしている場合、それに取り組みます。もしポジションが条件を満たしていれば、それに取り組む。
そんなものは見せていない。当時は指示がなかったから、キムはそうせざるを得なかった。
不思議なもので、当時、私はどうやって厳しくなく継続的に仕事をすることができたのだろう?私だけではなく、当時はヴィーチャ・ニコラエフ(ヴィニン)からもそうするように言われていた。
だから、このコードとそれを書いたプログラマーに対するあなたの不満が理解できない。