エラー、バグ、質問 - ページ 758 1...751752753754755756757758759760761762763764765...3185 新しいコメント Arkadiy 2012.06.27 13:57 #7571 ああ、今は4秒先行されている。 RekkeR 2012.06.28 02:48 #7572 トレンドラインの 位置が変わると、なぜ中点が消えてしまうのですか? 削除済み 2012.06.28 12:22 #7573 こんにちは。ビジュアルテスト中に、ある変数の値が各バー上でどのように変化するかをグラフィカルに見る必要があります。つまり、サブウィンドウに別のグラフを作成する必要があります。例えば、チャートの下に別ウィンドウで各バーの持分変動グラフを表示させたい。どうしたらいいのでしょうか?インジケータを書いてチャートに貼り付け、ターミナルのグローバル変数を通して EAから変数の値を渡すべきでしょうか?それとも「もっといい」方法があるのでしょうか?よろしくお願いします。 Документация по MQL5: Основы языка / Переменные / Глобальные переменные www.mql5.com Основы языка / Переменные / Глобальные переменные - Документация по MQL5 Mykola Demko 2012.06.28 12:50 #7574 Alex5757000:こんにちは。ビジュアルテスト中に、ある変数の値が各バー上でどのように変化するかをグラフィカルに見る必要があります。つまり、サブウィンドウに別のグラフを作成する必要があります。例えば、チャートの下に別ウィンドウで各バーの持分変動グラフを表示させたい。どうしたらいいのでしょうか?インジケータを書いてチャートに貼り付け、ターミナルのグローバル変数を通して EAから変数の値を渡すべきでしょうか?それとも「もっといい」方法があるのでしょうか?よろしくお願いします。そんなことはありません。インジケーターで直接エクイティやバランスの値を取得することができます。 バーチャートとして描画するインジケーターバッファのパラメータを定義します。そして、4つの値すべてを適切なバッファに書き込む。バーのオープニング、ハイ・ロー、ダイナミック(最後のバー)で開きます。添付ファイルでは次のようになります。もちろん、絶対値(推奨オプション)でもいいのですが、初期の小さな増分は表示されないと思いますので、初期値と現在値の差の方がいいと思います。ZSですが、いや、スケールがダイナミックなので、2番目の選択肢をやると、かなり読みやすくなりますよ。 ファイル: Indicator_Equity.mq5 4 kb 削除済み 2012.06.28 13:20 #7575 Urain:そんなことはありません、インジケーターで直接エクイティやバランスの値を取得することができます。 インジケーターバッファを バーチャートとして描画 するためのパラメータを設定します。で、4つの値すべてを対応するバッファに書き込む。バーオープン、ハイロー、クローズで動的に開く(最後のバー)。 エクイティとバランスの値 - はい、しかし、私はEAで計算された変数の値を見たい場合はどうすればよいですか? Olegs Kucerenko 2012.06.28 13:21 #7576 OBJ_LABELを チャート上に表示します。こちらでもお読みいただけます。https://www.mql5.com/ru/forum/1111/40260#comment_40260 https://www.mql5.com/ru/forum/2963 Mykola Demko 2012.06.28 13:29 #7577 Alex5757000: エクイティとバランスの値 - はい、でもEAで計算された変数の値を見たい場合はどうすればいいのでしょうか?カスタムイベントによって 行うことができます。ただ、イベント後にチャートを更新することを忘れないでください。 なぜなら、優先順位の高い順に、イベントが処理される前にティックが来るからです。しかし、それはグローバルでそれを行うことが可能ですが、同じ問題があります - ダニはすでに来ており、変数はまだEAで処理されている(その変更が準備されている)、もちろん、データが受信されますが、1ティックで遅延が発生します、それはまだイベントでより正しいです、あなたはすでに変数が実際のデータを持っていることを確実に知るとき、実際には後にチャートを更新置くための場所があります。 Nazariy Stapyak 2012.06.28 23:55 #7578 このコードは、「CTest getCopy(void) {CTest res;return res;}」が停止しているため、「'return' - structure has objects and cannot be copied」のエラーでコンパイルできません。これは、2つの方法で解決できます。1)"クラス"を "構造体"に変更する。2) オーバーロードされた代入演算 子でストップカをアンコメントする。では、コピーコンストラクタの役割をオーバーロードされた代入演算子が担うようにすればいいのですね。では、なぜ参考書ではマトリックスクラスの一例を除いて言及されていないのでしょうか(ちなみに、このマトリックスクラスの詳細な解析により、私は自分のコードの誤りを発見することができました)。class CTest { public: CTest(void): cnt(0) {} ~CTest(void) {} CTest(const CTest& T) {cnt = T.cnt;} // copy constructor //------------------------ CTest getCopy(void) {CTest res; return res;} //------------------------ //CTest* operator=(const CTest& T) {cnt = T.cnt; return GetPointer(this);} private: int cnt; }; Документация по MQL5: Основы языка / Операторы / Оператор-выражение www.mql5.com Основы языка / Операторы / Оператор-выражение - Документация по MQL5 Errors, bugs, questions I need this code .dll Matlab Engine Vladimir Gomonov 2012.06.29 08:03 #7579 WWer:このコードは、「CTest getCopy(void) {CTest res;return res;}」が停止しているため、「'return' - structure has objects and cannot be copied」のエラーでコンパイルできません。 もちろん、関数からオブジェクトを返すことはできない。(構造物と違って)文書化されている。 これは、2つの方法で解決できます。1)"クラス"を "構造体"に変更する。上記をご参照ください。2) オーバーロードされた代入演算 子でstopkaをアンコメントする。もちろん、オーバーロードされた演算子はハンドルポインタを返しますが、これは正常です。今度は、getCopy()関数から返されるオブジェクトではなく、ポインタ(関数からの返り値は暗黙の代入)であることが、このコードを正しくしています。// 構文的に正しいもののみ。 // getCopy()関数から初期化されていない変数を返すのは、構文の問題を示すためだけで、合理的であることを装うものではありませんね。では、コピーコンストラクタの役割をオーバーロードされた代入演算子が担うようにすればいいのですね。 あの...ロールと何の関係があるのでしょうか? 代入演算子はどのようにでもオーバーロードできますし、コピーコンストラクタも正しく書くことができます。 あなたの場合の間違いは別のところにあります。なぜ、マトリックスクラスの一例を除いて、参考書では言及されていないのでしょうか(ちなみに、その詳細な分析により、私のコードの誤りを発見することができました)。なぜなら、紀元前2096785年2月11日、恐竜ヴァシャが不注意でトカゲのクラバを踏んでしまったからだ。 それが長い原因と結果の連鎖を引き起こし、現在の状況に至った。 どうしようもないことなのだ。 ;) Nazariy Stapyak 2012.06.29 09:56 #7580 MetaDriver:// getCopy()関数から初期化されていない変数が返されるのは、うまくいけば構文上の問題を示すのに役立つだけで、合理的であるかのように装うことはないでしょう。なぜ初期化する必要があるのですか?そのためのコンストラクタを持つクラスのインスタンスなのです。MetaDriver。 あの...ロールと何の関係があるのでしょうか?代入演算 子はどのようにでもオーバーロードできますし、コピーコンストラクタも正しく書くことができます。 あなたの間違いは全く別のところにあるのです。そして、そのための正しいコピー用コンストラクタをどのように書けばよいのでしょうか。 1...751752753754755756757758759760761762763764765...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは。
ビジュアルテスト中に、ある変数の値が各バー上でどのように変化するかをグラフィカルに見る必要があります。つまり、サブウィンドウに別のグラフを作成する必要があります。例えば、チャートの下に別ウィンドウで各バーの持分変動グラフを表示させたい。
どうしたらいいのでしょうか?インジケータを書いてチャートに貼り付け、ターミナルのグローバル変数を通して EAから変数の値を渡すべきでしょうか?それとも「もっといい」方法があるのでしょうか?
よろしくお願いします。
こんにちは。
ビジュアルテスト中に、ある変数の値が各バー上でどのように変化するかをグラフィカルに見る必要があります。つまり、サブウィンドウに別のグラフを作成する必要があります。例えば、チャートの下に別ウィンドウで各バーの持分変動グラフを表示させたい。
どうしたらいいのでしょうか?インジケータを書いてチャートに貼り付け、ターミナルのグローバル変数を通して EAから変数の値を渡すべきでしょうか?それとも「もっといい」方法があるのでしょうか?
よろしくお願いします。
そんなことはありません。インジケーターで直接エクイティやバランスの値を取得することができます。
バーチャートとして描画するインジケーターバッファのパラメータを定義します。
そして、4つの値すべてを適切なバッファに書き込む。
バーのオープニング、ハイ・ロー、ダイナミック(最後のバー)で開きます。
添付ファイルでは次のようになります。
もちろん、絶対値(推奨オプション)でもいいのですが、初期の小さな増分は表示されないと思いますので、初期値と現在値の差の方がいいと思います。
ZSですが、いや、スケールがダイナミックなので、2番目の選択肢をやると、かなり読みやすくなりますよ。
そんなことはありません、インジケーターで直接エクイティやバランスの値を取得することができます。
インジケーターバッファを バーチャートとして描画 するためのパラメータを設定します。
で、4つの値すべてを対応するバッファに書き込む。
バーオープン、ハイロー、クローズで動的に開く(最後のバー)。
OBJ_LABELを チャート上に表示します。
こちらでもお読みいただけます。
https://www.mql5.com/ru/forum/1111/40260#comment_40260
https://www.mql5.com/ru/forum/2963
エクイティとバランスの値 - はい、でもEAで計算された変数の値を見たい場合はどうすればいいのでしょうか?
カスタムイベントによって 行うことができます。ただ、イベント後にチャートを更新することを忘れないでください。
なぜなら、優先順位の高い順に、イベントが処理される前にティックが来るからです。
しかし、それはグローバルでそれを行うことが可能ですが、同じ問題があります - ダニはすでに来ており、変数はまだEAで処理されている(その変更が準備されている)、もちろん、データが受信されますが、1ティックで遅延が発生します、それはまだイベントでより正しいです、あなたはすでに変数が実際のデータを持っていることを確実に知るとき、実際には後にチャートを更新置くための場所があります。
このコードは、「CTest getCopy(void) {CTest res;return res;}」が停止しているため、「'return' - structure has objects and cannot be copied」のエラーでコンパイルできません。
これは、2つの方法で解決できます。
1)"クラス"を "構造体"に変更する。
2) オーバーロードされた代入演算 子でストップカをアンコメントする。
では、コピーコンストラクタの役割をオーバーロードされた代入演算子が担うようにすればいいのですね。では、なぜ参考書ではマトリックスクラスの一例を除いて言及されていないのでしょうか(ちなみに、このマトリックスクラスの詳細な解析により、私は自分のコードの誤りを発見することができました)。
このコードは、「CTest getCopy(void) {CTest res;return res;}」が停止しているため、「'return' - structure has objects and cannot be copied」のエラーでコンパイルできません。
これは、2つの方法で解決できます。
1)"クラス"を "構造体"に変更する。
上記をご参照ください。
2) オーバーロードされた代入演算 子でstopkaをアンコメントする。
もちろん、オーバーロードされた演算子はハンドルポインタを返しますが、これは正常です。今度は、getCopy()関数から返されるオブジェクトではなく、ポインタ(関数からの返り値は暗黙の代入)であることが、このコードを正しくしています。
// 構文的に正しいもののみ。
// getCopy()関数から初期化されていない変数を返すのは、構文の問題を示すためだけで、合理的であることを装うものではありませんね。
では、コピーコンストラクタの役割をオーバーロードされた代入演算子が担うようにすればいいのですね。
なぜ、マトリックスクラスの一例を除いて、参考書では言及されていないのでしょうか(ちなみに、その詳細な分析により、私のコードの誤りを発見することができました)。
なぜなら、紀元前2096785年2月11日、恐竜ヴァシャが不注意でトカゲのクラバを踏んでしまったからだ。 それが長い原因と結果の連鎖を引き起こし、現在の状況に至った。 どうしようもないことなのだ。
;)
なぜ初期化する必要があるのですか?そのためのコンストラクタを持つクラスのインスタンスなのです。
あの...ロールと何の関係があるのでしょうか?代入演算 子はどのようにでもオーバーロードできますし、コピーコンストラクタも正しく書くことができます。 あなたの間違いは全く別のところにあるのです。
そして、そのための正しいコピー用コンストラクタをどのように書けばよいのでしょうか。