[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 532

 
FAQ:
の場合、関数の中で入力変数を変更すると、関数の出力では変更した値を保持します。
どうもありがとうございました.))))
 
Tantrik:

プログラマーの皆さん、こんにちは!ウインドウに表示される未決済注文を、開始時間ではなく、商品名でグループ化して表示するスクリプトはありますか?

10通貨ペアで作業していると、必要な注文が見つからない。誰か持ってないかな?

OrderSymbol()のMetaEditorヘルプを参照してください。
 
Reshetov:
OrderSymbol()関数については、MetaEditorのヘルプを参照してください。
ありがとうございます、自分で変えられるように。
 
Tantrik:
ありがとうございます!自分で変えられるように
誰もそれを禁じておらず、潜在的なチャンスがあるのなら、それは可能なのです。
 
Reshetov:
誰もそれを禁じておらず、潜在的なチャンスがあるのなら、それは可能です。
どこにあるか教えてください。 全部英語です。
 

MetaTrader 4を使ったFXの最大ベット額はいくらですか?デモ口座では50ティまで賭けています。51が効かなくなった。この数字を大きく変更することはできますか? プログラムの設定を見ましたが、見つかりませんでした。50以上入力すると、「売り」「買い」ボタンが無効になるのですが。

これらのパラメータを変更できない場合、価格が意図したエントリーポイントから飛び去ることなく、連続して複数の注文を出す方法を教えてください。

新しい注文を開くにはF9キーが必要ですが、その後、あちこちをクリックしなければならず、時間がかかるかもしれません。

MT4で、すべての注文を一度に決済する機能はありますか?あるいは、ホットキーで一気に閉じる?

 

翌日の高値(テールなし)を探そうとしている(1時間足の場合)...インジケータを作成する。

は何も表示しない...

int start()
{
int counted_bars = IndicatorCounted();
int lowest=0;
int highest=0;
//----
int limit;
//---- последний посчитанный бар будет пересчитан
if((counted_bars > 0))
counted_bars--;
limit = Bars - counted_bars;
//---- основной цикл

if ((Hour()> 0 && Hour()<=1 && Minute()>0 && Minute()<=1 ) ){

for(int i = 1; i < limit; i++)
{
//+++++++++++++++++++++++
for(int k = 1; k < 24; k++)
{if (iClose(NULL,0,k) >highest)
{highest=iClose(NULL,0,k);
}
}
ExtMapBuffer1[i] = highest ;

//+++++++++++++++++

for(int l = 1; l < 24; l++)
{if (lowest ==0) {lowest=iClose(NULL,0,l);}
if (iClose(NULL,0,l)< lowest) {lowest=iClose(NULL,0,l);} }
ExtMapBuffer2[i] = lowest;

//------------------
}
//----
return(0);
}

}

 
Tantrik:
どこにあるか教えてください。 全部英語です。
ありがとう、わかったよ。
 
DOCTORS:

翌日の高値(テールなし)を探そうとしている(1時間足の場合)...インジケータを作成する。

は何も表示しない...

int start()
{
int counted_bars = IndicatorCounted();
int lowest=0;
int highest=0;
//----
int limit;
//---- последний посчитанный бар будет пересчитан
if((counted_bars > 0))
counted_bars--;
limit = Bars - counted_bars;
//---- основной цикл

if ((Hour()> 0 && Hour()<=1 && Minute()>0 && Minute()<=1 ) ){

for(int i = 1; i < limit; i++)
{
//+++++++++++++++++++++++
for(int k = 1; k < 24; k++)
{if (iClose(NULL,0,k) >highest)
{highest=iClose(NULL,0,k);
}
}
ExtMapBuffer1[i] = highest ;

//+++++++++++++++++

for(int l = 1; l < 24; l++)
{if (lowest ==0) {lowest=iClose(NULL,0,l);}
if (iClose(NULL,0,l)< lowest) {lowest=iClose(NULL,0,l);} }
ExtMapBuffer2[i] = lowest;

//------------------
}
//----
return(0);
}

}

朝1時になったら、すぐに朗読が始まる...。
 

コンパイラの論理が理解できない。機能があるんです。外部変数を宣言しています。

int startです。

さらに関数本体

double B()
{

int i=0, k=OrdersHistoryTotal();
for (i=k-1; i<=k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)!=false) {
if (OrderType()==OP_SELL) {
if(OrderProfit()< 0) {start=1;} ←クリックすると拡大します。

}

}

}

}

スタート変数の値は記憶して おき、必要なときにゼロに等しくする必要があります。しかしここで、OrderProfit()<0なら start=1、 OrderProfit()> 0なら 自動的に start=0となることが判明しました。

コンパイラのロジックを正しく理解できているか?