エラー、バグ、質問 - ページ 1887

 
Vladimir Karputov:

私が見たところ、あなたは私が示したコードをチェックしていないようです。言い方を変えれば、まず確認してから、もう一度質問するということです。

検証するまでもなく、あるべき姿を返しているのがわかるからです。

最初に使った関数の話です

 
Alexandr Bryzgalov:

検証するまでもなく、必要なものが返ってくることは確認できている

関数を使用する最初のバリエーションについて話していたのです。


OK、では。最後尾から行こう。

1.PositionGetInteger。

この関数は、以前に関数で選択されたオープンポジションの要求されたプロパティを返します...

つまり、PositionGetIntegerを使用する 前に、まず位置を選択する必要があります。


2.PositionGetTicketを使用してポジションを選択します。

戻り値

ポジションチケットのことです。実行に失敗した場合は、0を返す。


また、PositionGetTicketから返されたものがあることを(ループの後の)どこで確認しているのでしょうか?チェックがなく、そこで、「0」が返される、つまり、PositionGetTicketがエラーでトリガーされたことになり、存在しないポジションを選択したことに等しくなるのです。そして、PositionGetTicketの結果を確認せずに、存在しない位置からそのプロパティを取得しようとします。そしてそこには、非実在位置のプロパティに、ゴミか、ヌル構造のただのデータか、どちらか。


結論から言うと、PositionGetTicketが「0」を返すかどうかをチェックしないと、先に進めない。

 
Vladimir Karputov:


OK、では。最後尾から行こう。

1.PositionGetInteger。

この関数は、以前に関数で選択されたオープンポジションの要求されたプロパティを返します...

つまり、PositionGetIntegerを使用する 前に、まず位置を選択する必要があります。


2.PositionGetTicketを使用してポジションを選択します。

戻り値

ポジションチケットのことです。実行に失敗した場合は、0を返す。


また、PositionGetTicketから返されたものがあることを(ループの後の)どこで確認しているのでしょうか?チェックがなく、そこで、「0」が返される、つまり、PositionGetTicketがエラーでトリガーされたことになり、存在しないポジションを選択したことに等しくなるのです。そして、PositionGetTicketの結果を確認せずに、存在しない位置からそのプロパティを取得しようとします。そしてそこには、非実在位置のプロパティに、ゴミか、ヌル構造のただのデータか、どちらか。


要約すると、PositionGetTicketが「0」を返すことを確認しないと、それ以上進めないということです。

ありがとうございます、とても詳しくて助かりました。
 
Vladimir Karputov:


よし、こんな感じで行こう。最後尾から行こう。

1.PositionGetInteger。

この関数は、以前に関数で選択されたオープンポジションの要求されたプロパティを返します...

つまり、PositionGetIntegerを使用する 前に、まず位置を選択する必要があります。


2.PositionGetTicketを使用してポジションを選択します。

戻り値

ポジションチケットのことです。実行に失敗した場合は、0を返す。


また、PositionGetTicketから返されたものがあることを(ループの後の)どこで確認しているのでしょうか?チェックがなく、そこで、「0」が返される、つまり、PositionGetTicketがエラーでトリガーされたことになり、存在しないポジションを選択したことに等しくなるのです。そして、PositionGetTicketの結果を確認せずに、存在しない位置からそのプロパティを取得しようとします。そしてそこには、非実在位置のプロパティに、ゴミか、ヌル構造のただのデータか、どちらか。


結論から言うと、PositionGetTicketで「0」が返ってくるかどうかを確認しないと、それ以上進めないということです。

いわんこっちゃない)

そういう問題じゃないんです。

正しく読む:ある関数が異なる状況下で同じ値を返してもいいのか?

は、そのような機能でよいのでしょうか?
 
Vladimir Karputov:

要約すると、PositionGetTicketのリターンが「0」であることを確認しないと、次に進めないということです。

することができます。

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

バグ、バグ、質問

fxsaber さん 2017.05.12 11:19

は、チェック(PositionGetInteger(POSITION_TICKET) > 0)を行うのが論理的です。
 
Alexandr Bryzgalov:

という関数は、異なる状況下で同じ値を返すのでしょうか?

は、この関数が行うことで良いのでしょうか?
残念ながら、そうです。

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

バグ、バグ、質問

fxsaber さん 2017.05.12 11:29

しかし、それ以外の値では、誤解を招く恐れがあります。
 
Alexandr Bryzgalov:

1.説明する必要がない(笑)

かんけいない

2.読み方:関数は異なる状況下で同じ値を返しても良いのか?

は、関数でやってもいいのでしょうか?


1.あなたもコードを間違えたのに、それを認めたくないという失礼な人なんですね。

2.この機能は全く正常に動作します。な ぜなら、これ(PositionGetInteger(POSITION_TYPE))は POSITION_TYPE_BUY かPOSITION_TYPE_SELL2つの値しか返す ことができないからです。しかし、ポジションを選択せずに(選択しない、つまり具体的に何が選択されたかを確認しない)、(PositionGetInteger(POSITION_TYPE))に何かを要求するのは無茶 です。


要するに、あなたのコードが論理的に間違っている場合、あなたにはシステム機能に何かを要求する権利はないのです。

 
Vladimir Karputov:

要するに、自分のコードが論理的に間違っている場合、システム機能に何かを要求する権利はないのです。

その良い例が、質問に答えてもらえなかった場合です。
 
Vladimir Karputov:


1.コードを間違えたのに、それを認めない失礼な人ですね。

2.この機能は全く正常に動作します。な ぜなら、これ(PositionGetInteger(POSITION_TYPE))は2つの値(POSITION_TYPE_BUYまたはPOSITION_TYPE_SELL)しか返せないから です。しかし、ポジションを選択せずに(選択しない、つまり具体的に何が選択されたかを確認しない)、(PositionGetInteger(POSITION_TYPE))に何かを要求するのは無茶 です。


要するに、自分のコードが論理的に間違っている場合、システム関数に何かを要求する権利はないのです。

すみません、問題を見抜けない人がいるのは、私のせいではありません。

コードに意図的なミスがあることは認めます。

そして、それを解決する方法を知っています。

しかし、問題は別です。

 

入力パラメータが正しくない場合、PositionGetInteger(POSITION_TYPE)関数が エラー値(0と等しい)ではなく、購入値(0と等しい)を返すのはなぜですか?