//+------------------------------------------------------------------+//| Average True Range |//+------------------------------------------------------------------+intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
int i,limit;
//--- check for bars countif(rates_total<=ExtPeriodATR)
return(0); // not enough bars for calculation//--- preliminary calculationsif(prev_calculated==0)
{
ExtTRBuffer[0]=0.0;
ExtATRBuffer[0]=0.0;
//--- filling out the array of True Range values for each periodfor(i=1;i<rates_total && !IsStopped();i++)
ExtTRBuffer[i]=MathMax(high[i],close[i-1])-MathMin(low[i],close[i-1]);
//--- first AtrPeriod values of the indicator are not calculateddouble firstValue=0.0;
for(i=1;i<=ExtPeriodATR;i++)
{
ExtATRBuffer[i]=0.0;
firstValue+=ExtTRBuffer[i];
}
//--- calculating the first value of the indicator
firstValue/=ExtPeriodATR;
ExtATRBuffer[ExtPeriodATR]=firstValue;
limit=ExtPeriodATR+1;
}
else limit=prev_calculated-1;
//--- the main loop of calculationsfor(i=limit;i<rates_total && !IsStopped();i++)
{
ExtTRBuffer[i]=MathMax(high[i],close[i-1])-MathMin(low[i],close[i-1]);
ExtATRBuffer[i]=ExtATRBuffer[i-1]+(ExtTRBuffer[i]-ExtTRBuffer[i-ExtPeriodATR])/ExtPeriodATR;
// ExtATRBuffer[i]=(ExtATRBuffer[i-1]+(ExtTRBuffer[i]-ExtTRBuffer[i-ExtPeriodATR])/ExtPeriodA)*4;
}
//--- return value of prev_calculated for next callreturn(rates_total);
}
//+------------------------------------------------------------------+
皆さん、ありがとうございました。Help to understand : test error: 2019.12.04 14:14:40.097 TestGenerator: unmatched data error (high value 0.71570 at 2019.01.21 23:30 is not reached from lowest timeframe, high price 0.71560 mismatches.).
Ilzadjan Akhmedov: 皆さん、ありがとうございました。Help to understand : test error: 2019.12.04 14:14:40.097 TestGenerator: unmatched data error (high value 0.71570 at 2019.01.21 23:30 is not reached from lowest timeframe, high price 0.71560 mismatches.).
こんにちは、あまり叱らないでください、私は言語と一般的なOOPを学んでいるところです。
ATRインジケータでExtATRBuffer[i]=...に割り当てられた数式をすべて乗算しようとすると、なぜか教えてください。1を掛けるとチャート上に実際の値が表示され、0.5n.e.の端数を掛けるとゼロ線から上下に動く値があります。
エラーを回避するためにはどうしたらよいですか?
最終的には、ATPの実測値に変更可能な定数を乗じたものを請求します。
返信してくれた皆さん、ありがとうございました!!!
皆さん、ありがとうございました。Help to understand : test error: 2019.12.04 14:14:40.097 TestGenerator: unmatched data error (high value 0.71570 at 2019.01.21 23:30 is not reached from lowest timeframe, high price 0.71560 mismatches.).
被測定機器用に履歴を読み込む(F2)
被測定機器用に履歴を読み込む(F2)
ご清聴ありがとうございました。ロードされたが、今の要約は次のとおりです。 2019.12.04 16:00:20.408 TestGenerator:一貫性のないデータエラー(ボリューム制限409は2016.03.30 23に超過:45)。
ご清聴ありがとうございました。ダウンロードされたが、今の要約は次のとおりです。 2019.12.04 16:00:20.408 TestGenerator:一貫性のないデータエラー(ボリューム制限409は2016.03.30 23に超過:45)。
各タイムフレームごとに、履歴をダウンロードします。
各タイムフレームごとに、履歴をダウンロードします。
この600ドルのアドバイザーは、再度テストを行ったが、取引されない。もし問題が解決したら、設定を送信してください。
FileOpen()で存在しないファイルを開こうとすると・・・。
というのを読んだことがあります。この「開くファイルの 名前には、サブフォルダーが含まれることがあります」というフレーズが唯一の手がかりになるかもしれません。ファイルが書き込み用にオープンされている場合、指定されたサブフォルダがなければ作成されます。" しかし、ここでもいくつかのサブフォルダーと書いてあるのは、このディレクトリの中のこのサブフォルダーにファイルが作成されるということを指しているのかもしれない、普通に書いてはいけないのだから。普通に書き込みができ、ファイルがない場合は作成されます。科学者だからといって、細かいところまで推測できるわけではありません。機能コードや適切な説明がないため、多くの機能がどのように機能するのかさえ、いまだに理解できていません。ある骨を投げられて、それが食べられるかどうか、自分で理解するんです。
というのを読んだことがあります。この「開くファイルの 名前には、サブフォルダーが含まれることがあります」というフレーズが唯一の手がかりになるかもしれません。ファイルが書き込み用にオープンされている場合、指定されたサブフォルダがなければ作成されます。" しかし、ここでもいくつかのサブフォルダーと書いてあるのは、このディレクトリの中のこのサブフォルダーにファイルが作成されるということを指しているのかもしれない、普通に書いてはいけないのだから。普通に書き込みができ、ファイルがない場合は作成されます。科学者だからといって、細かいところまで推測できるわけではありません。機能コードや適切な説明がないため、多くの機能がどのように機能するのかさえ理解できません。 何か骨を投げて、それが食べられるかどうか理解するんです。
朝、どうやって太陽に会うの?天文学はすべて勉強したのですか?
標準関数は、その内部構造を解明するためのものではありません。使うためなんです。そして、その記述はドキュメントにある。
FileOpen()で新規にファイルを作成するようにお伝えしました。でも、いやいや...、「取って使う」のではなく、10ページにわたるコーラスを作らなければならないのです。まあ、助けてくれた人に「ありがとう」と言うこともありますけどね。
こんにちは。
ビルダー投稿について、誰も何も言わないの?
新しいスレッドにした方が、より多くの人に見てもらえるので、意味があるのかも?もしそうなら、モデレーターに掲載を依頼してください...。それとも自分で作る?