[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 575

 
Ekburg:

それはそれです:すべてがそこに正常です!私はこの目的のためにプリンタを置き、テスト中に私は修正関数に送信される値が何であるかを追跡することができるように、すべてがそこに正常であり、停止が異なっている、何も余分なものは投げられない、すべてがサーバーによって許可された制限内にあり、上記のコード内の反対者は同じ値を送信することは許可されていません。

どうだろう。私のところでは、OrderSelect()の後にOrderModify()の直前でチェックを入れてから、エラー1が出なくなり、それ以前も常に点滅しています。
 
rigonich:

この警告は,配列のインデックスがint型の数値でなければならないことを意味します.iClose()、iOpen() 関数を使用する必要があります。オープニングタイムが1時間の小節の番号を決定し、次の10小節の中から必要な小節をループで選択します。
返信ありがとうございました。理論的には理解できるのですが、実際にどうすればいいのか、正直なところわかりません。
 
Desead:

価格チャートを正規化する必要がある、任意の通貨ペアを選択します。インジケーターに必要なんです。現在の値を前の値で割ってみると、1付近で何らかの発振器が発生します。私は、チャートを絶対値から相対値に変換すること、つまりこの場合、見積りの変化率を見ることができるようにすることを思いつきました。実施されています。すでに良くなっており、実質的に必要なものです。しかし、私の最終的な望みは、[0:1]の範囲で引用符を正規化することです。ちなみに、これは私が必要としているものですが、ブルジョワで、私はロシア語で同じものが欲しいです: http://people.revoledu.com/kardi/tutorial/Similarity/Normalization.html

もうこれとの戦いに疲れました。 保留注文の全削除が普通にできないので、コツがつかめません。

ループのFOR WHILEに削除された注文が残っていることも追加しましたが、まだ削除されていません。削除したい注文が20件ほどあるのですが、何か複雑な事情があるのでしょうか?


最初の質問ですが、ストキャスティックを見てください。
 
Desead:

価格チャートを正規化する必要がある、任意の通貨ペアを選択します。インジケーターに必要なんです。現在の値を前の値で割ってみると、1付近で何らかの発振器が発生します。私は、チャートを絶対値から相対値に変換すること、つまりこの場合、見積りの変化率を見ることができるようにすることを思いつきました。実施されています。すでに良くなっており、実質的に必要なものです。しかし、私の最終的な望みは、[0:1]の範囲で引用符を正規化することです。ちなみに、これは私が必要としているものですが、ブルジョワで、私はロシア語で同じものが欲しいです: http://people.revoledu.com/kardi/tutorial/Similarity/Normalization.html

もうこれとの戦いに疲れました。 保留注文の全削除が普通にできないので、コツがつかめません。

ループのFOR WHILEに削除された注文が残っていることも追加しましたが、まだ削除されていません。削除したい注文が20件ほどあるのですが、何か複雑な事情があるのでしょうか?


すでに同じ方法で保留中の注文をすべて入れて削除しようとしたのですが、他の方法ではダメなのでしょうか。知っている人がいたら、その理由を教えてください。
 
Sergstuddek:
人々は親切に配列で動作する方法をアドバイスし、私は1.00から10.00までの時間間隔で、バーを閉じて開くの最大値と最小値を選択する必要があり、私はそうしようとしたが、何かが間違っている。It gives out '[' - array index is to be integer C:\Program Files/ThinkexpertsProfiler19 EUR-JPY.mq4 (61, 21)
何が問題なのか、どうすればいいのか

以下のようにデザインを変更しました。

int MAX()
{
if (Hour()==10)
        {
      
        for(i=0; i<=9; i++)
        double MAX1 = High [iHighest(Symbol(), PERIOD_H1,MODE_CLOSE,i,0)];
        }
        return(MAX1);
        
}

エラーは出ないのですが、価格が動かないというか、正常に動作しないのですが、何が問題なのでしょうか?

 
Sergstuddek:

以下のようにデザインを変更しました。

エラーは出なくなったが、価格が検出されない、というか、検出されるが正しく検出されない、何が問題なのか?

10時にプログラムを実行すれば、過去9本のバーの中で最高値を 記録したバーインデックスを検索します。Hour()は番組の開始時間(サーバータイム)です。

追伸:正確には、指数ではなく、そのバーの最高値(High)です。

ファイル:
 

私は他のSLとTPを置くとすぐに、購入動作しませんが、販売とのみロットを開きますので、助けてください。

#define MAGIC 1234
#define IDENT "mo_bidir"

extern int lots = 1;
extern int stop_loss = 76; //
extern int take_profit = 750; //
extern int steps = 5;// Шаг отложенных ордеров

int start(){

if (OrdersTotal() == 0){
OrderSend(Symbol(), OP_BUY, lots ,Ask, 3, Ask - stop_loss * Point, Bid + take_profit * Point, IDENT, MAGIC, 0, Blue);
OrderSend(Symbol(), OP_SELL, lots ,Bid, 3, Bid + take_profit * Point, Ask - take_profit * Point, IDENT, MAGIC, 0, Red);
OrderSend(Symbol(), OP_BUYSTOP, 0.05*lots,Ask+steps*Point, 3, Ask + stop_loss * Point, Bid + take_profit * Point, IDENT, MAGIC, 0, Blue);
OrderSend(Symbol(), OP_SELLSTOP, 0.05*lots,Bid-steps*Point, 3, Bid - take_profit * Point, Ask - take_profit * Point, IDENT, MAGIC, 0, Red);
}
return(0);
} 
 
samaelfess:

私は他のSLとTPが買う動作しない置くとすぐに、助けてください、販売とのみロットを開きます。



Bid + take_profit ではなく、Bid + stop_loss となっています。また、OP_BUYSTOPではAsk- stop_lossではなく Ask + stop_loss OP_SELLSTOPでは Bid + take_profitではなくBid - take_profitを保留しています。

そして、すべての価格は正規化されていません。

追伸:他のSLやTPがない状態でも効果があるのかな?

 
ありがとうございます、もっと注意します。
 
rigonich:

どうだろう。OrderSelect()の直前にOrderModify()をチェックしてからエラー1が出なくなりましたが、それ以前もずっと表示されていました。

そして、どのようなチェックを入れたのか!
理由: