[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 78

 
goldtrader >> :

1番目の条件付きif文の下の条件は、その次の文(次の行)にのみ適用されます。

その他はunlessで実行されます。 つまり、注文を閉じるコマンドがなくても、いずれかのプレイサウンドが機能するのです。

正しくはこうです。

PlaySound("timeout.wav")が動作した後、PlaySound("money.wav")を実行すると、取引は正常に終了しますが、終了前にPlaySoundエラーが発生し、このことは短い取引でのみ動作し、長い取引ではすべてが正常です - PlaySound("money.wav").クローズしたらPlaySound("timeout.wav")、エラーならPlaySound("timeout.wav")、ロングとショートで同じデザインです。ご指摘の通り括弧を付けてみます、入っているかは分かりませんが))


 
Dimoncheg >> :

...>> 説明されたようなブラケットを試してみます、これで良いのか分かりませんが)

そのやり方では、なかなか良い結果は得られません。

 
goldtrader >> :

そのようなアプローチでは、良い結果を得ることは難しいでしょう。

掲示板での文章の見せ方によって結果が左右されることはないのだと深く納得しました))少なくとも私はインテリに自分を含めないが、それはでたらめなすべての主題から外れている))。

注文送信用のブラケットを作りましたが、同じように最初はエラー音、次に終了音が鳴ります。長いものには巻かれろ、である。だからすべてがもちろん動作し、ちょうど最近、エラーの種類を確認するために関数を挿入し、それがこの音が終了音の前に現れた理由であり、その前に私はそれに気づかなかった、もちろん - すべてが動作します。

 

OK、参考までに。PlaySound()コマンドは、前のサウンドの終了を待たず、単に割り込んで自分のサウンドを開始します。高速ループでは、中間音が吸収されることがあります。

 
Roger >> :

OK、参考までに。PlaySound()コマンドは、前のサウンドの終了を待たず、単に割り込んで自分のサウンドを開始します。高速ループでは、中間音が吸収されることがあります。

音だけなら、ショートトレードのどのクローズでも「エラーなし」というエラーがログにポップアップし、3トレードがクローズ-3エラーなどが、その後すべてがクローズしログが規定クローズ、ロングトレードでは、すべてが正常で音が意図通りに働き、エラーが規定されていない、私は3秒と5秒、すべて同じ、唯一の適切な遅延でスリップを置く

 
ヒントを教えてください。例えば、[i+1]=0.9, [i+2]=0.8, [i+3]=1,5...... しかし、履歴上のすべてのバーに対して、最後に計算した値が適用されます......最後の1であれば、[i+1]=1、 [i+2]=1, [i+3]=1 そして最後の2なら [i+1]=2, [i+2]=2, [i+3]=2 ...となります。
 
Dimoncheg писал(а)>>

唯一の音で問題だった場合、エラーは "いいえエラー "は、任意のクローズ短い取引でログにポップアップし、3つの取引が閉じている - 3エラーなどが、そのすべてが閉じられ、ログは長い取引のために、罰金、そして音が意図したように動作し、エラーは、3秒と5秒、すべてが同じ、適切な遅延で滑りを挿入されていない規定され

私も似たようなもので、苦労して、遅れをとって、進歩がないんですよね。で注文が終了しているかどうかを確認しました。

if(OrderCloseTime()!=0)とする。

私の悩みは一気に解消されました。試してみてください。

 
RocketTrend писал(а)>>
ヒントをお願いします。例えば、[i+1]=0.9, [i+2]=0.8, [i+3]=1,5...... しかし、最後に計算した値が履歴のすべてのバーに適用されます...... 最新1なら、 [i+1]=1, [i+2]=1, [i+3]=1, 最新2なら [i+1]=2, [i+2]=2, [i+3]=2............。

わかりにくいから、そのコードの一部を全文掲載してくれ。

 
Reshetov >> :

デバッグが必要な場合は、Print()を使用します。

しかし、ほとんどの場合、それは必要ありません。


まあ、私は違う意見なんですけどね。今、Expert Advisorを書いているのですが、ちゃんとしたデバッガがないと大変なことになりますね。特にデータアレイの場合は。

このアルゴリズムが正しく動作していることを確認するために、指標を計算する際に得られるデータを分析する必要があります。また、配列は1つだけではありません。

Print()、Comment()、Alert()以外に使えるツールはないのでしょうか?

 
Reshetov >> :


これは一体何なんだ?OrderSelect()は何のためにあるのですか?


あとは、コードがインデントされずに並べられていて、ブラケットを追うことができないので、理解するのが難しいですね。

よし、戯言は抜きにして、視力を損なわないようにしよう。

/---- 入力パラメータ
extern int PerRSI=8;
extern int MagicNamber=77771;
extern double Lots=1.0;
//+------------------------------------------------------------------+
int start()
{
イント
type, // 注文の種類
cnt, // オーダーインデックス
ticket, // オーダーの識別番号
total; // 未決済注文の数
二重
rsi_0, // 値。rsi_0電流
rsi_1; // 値。rsi_1 1本目のバー

rsi_0=iRSI (NULL, 0, PerRSI, 0, 0); // 現在のバー
rsi_1=iRSI (NULL, 0, and PerRSI,0, 1); // 現在のバー+1

if(rsi_0 < rsi_1 && rsi_1 < 30) // ラインが30を超えたら

ticket=OrderSend (Symbol(), OP_BUY,Lots, Ask, 3, 0, 0, "My RSI", MagicNamber, 0, Green)を実行。

OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)です。


if(rsi_0 > rsi_1 && rsi_1 > 60) // ラインが70を超えたら

OrderClose(ticket, OrderLots(), Bid, 3, Violet ); // クローズポジション

return(0); // 終了

}

なぜスクープが購入されクローズしないのか、コミット時のエラーはないのか