int start() { int i=Bars-IndicatorCounted()-1; while(i>=0) { Bears_array[i]=iBearsPower(NULL,0,PeriodPower,PRICE_CLOSE,i)。 Bulls_array[i]=iBullsPower(NULL,0,PeriodPower,PRICE_CLOSE,i); MA_Bears[i]=iMAOnArray(Bears_array,0,MA_Period,0,MODE_EMA,i)とした。 MA_Bulls[i]=iMAOnArray(Bulls_array,100,MA_Period,0,MODE_SMA,i)とする。 Buf_0[i]=MA_Bulls[i]; i--; } を返します。 }
Buf_0[i]=MA_Bears[i]は、指数プロットのある段階で制御するために、平滑化したブルだけを表示するようにしています。EXACTLYでもない。1のピリオドで滑らかにすると、実際には埋め込みブルを繰り返さなければならない。したがって、MA_Bulls[i]=iMAOnArray(Bulls_array,100,MA_Period,0,MODE_SMA,i);のラインが何かおかしいと結論付けました。具体的に何がわからないんですが・・・HELP me !!!!!!。マニュアルや資料を見ながら、3日間が経ちました。ありがとうございました。
string час="15";
string мин="15";
datetime some_time=D'Year().Month().Day() час:мин';//попробуй так ____ но на тестере не будет работать, так как текущие год месяц и день
привяжитесь к барам так проще вместо iBarShift(0,0, some_time) номер бара
14:56' - date literal string is incomplete - これがコンピューターから受けた警告
です。
日付が必要なのはわかりますが、私は特定の日付は必要
ありません。
ポイントを明確にしてください。
string час="15";
string мин="15";
datetime some_time=D'Year().Month().Day() час:мин';//попробуй так ____ но на тестере не будет работать, так как текущие год месяц и день
привяжитесь к барам так проще вместо iBarShift(0,0, some_time) номер бара
インジケータを書こうとしています。考え方は簡単で、(ブルの強さ-ベアの強さ)を平均化するのです。当然、一定期間は。
int start()
{
int i=Bars-IndicatorCounted()-1;
while(i>=0)
{
Bears_array[i]=iBearsPower(NULL,0,PeriodPower,PRICE_CLOSE,i)。
Bulls_array[i]=iBullsPower(NULL,0,PeriodPower,PRICE_CLOSE,i);
MA_Bears[i]=iMAOnArray(Bears_array,0,MA_Period,0,MODE_EMA,i)とした。
MA_Bulls[i]=iMAOnArray(Bulls_array,100,MA_Period,0,MODE_SMA,i)とする。
Buf_0[i]=MA_Bulls[i];
i--;
}
を返します。
}
Buf_0[i]=MA_Bears[i]は、指数プロットのある段階で制御するために、平滑化したブルだけを表示するようにしています。EXACTLYでもない。1のピリオドで滑らかにすると、実際には埋め込みブルを繰り返さなければならない。したがって、MA_Bulls[i]=iMAOnArray(Bulls_array,100,MA_Period,0,MODE_SMA,i);のラインが何かおかしいと結論付けました。具体的に何がわからないんですが・・・HELP me !!!!!!。マニュアルや資料を見ながら、3日間が経ちました。ありがとうございました。
まず、ブルとベアのデータアレイを形成し、次のサイクルでそれらをアイロンが、あなたはまだそれを形成していないと、すでに平滑化を適用し、何のデータを滑らかにすることはありません?
まずブルとベアのデータ配列を形成し、次のサイクルでアイロンをかける、まだ形成していないのにすでにスムージングを使っているので、スムージングするデータがないのでは?
からの翻訳
costy_ писал(а) >>
ありがとうございます、近づいてきました。一点だけ、よくわからない点があります。
'14:56' - 日付リテラル文字列が不完全です このような警告がコンピュータから表示されました。
私が理解する限り、それはまだ日付を必要としますが、私は特定の日付を必要としません。 私が必要とするのは、同じ日の特定の時間の価格と毎日現在の価格を比較することです。その点を明確にしてください。
なぜ、iCastを通して電話する必要が全くないのですか?統一のためでしょうか。それぞれ別のindicator-wrapperを書き、iCustomを通して呼び出す...。
問題は、私はこれらの2つの指標(AOとAC)を変更し、今私は変更された指標に従ってバーを色にしたいです。それとも他に方法があるのでしょうか?最近MQLを始めたばかりなのですが...。
問題は、2つの指標(AOとAC)を作り直したことで、今は変更した指標に従ってバーを色付けしたいのです。それとも他に方法があるのでしょうか?最近、MQLを学び始めたばかりなのですが...。
では、やり直したもの、呼んだもの、何が問題なのでしょうか?例えば、修正した指標をAO, ACと呼ぶ場合、呼び出しは
または、独自のパラメータを追加することができます
ありがとうございます、近づいてきました。一点だけ、よくわからない点があります。
'14:56' - 日付リテラル文字列が不完全で、このような警告がコンピュータから出されました。
私が理解する限り、それはまだ日付を必要としますが、私は特定の日付を必要としない、私が欲しいのは、同じ日の特定の時間の価格と毎日現在の価格を比較することです。その点を明確にしてください。
costy_ писал(а) >>
ありがとう
ございます、近づいてきましたね。一点だけ、よくわからない点があります。
14:56' - date literal string is incomplete - これがコンピューターから受けた警告
です。日付が必要なのはわかりますが、私は特定の日付は必要
ありません。ポイントを明確にしてください。
しかし、ある時間までバインドを維持することが可能かどうかを知りたい。MQL4では、各取引日の14:00のBid価格はどのように言うのでしょうか?
スキフォデッサ 2009.12.05 14:07
皆さん、こんにちは。
あるレベルの価格の交差回数を計算する方法を教えてください。3 (4,5...) の後に注文を開始したいのですが、最初の交差の後には注文を開始しないでください。
ありがとうございます。
------------------------------------------------------------
このアルゴリズムを試すことができます。
もし(現在のバーの価格>前のバーのリーブランド価格<レベル)なら、{カウンターを1つ増やす}。
If (counter>3) then {注文を開く; カウンタをゼロにリセット}.
では、同じことを通常の言葉で書いてみましょう(ブロックだけ書いています。 必要なところに挿入してください)。
Extern int Chet=10; // 何回クロスしたら注文を出すか。
Extern double Uroven=1.6566; // 価格がどのレベルを超えたら、カウントを開始するか。
スタート機能では、おおよそ次のような条件となります。
int k;
if(Open[0]>Uroven && Open[1]<Uroven)k=k+1;// ここでは、UPクロスを考慮 します。
if(k>Chet){OrderSend(......);k=0};
。
一般的には、それほど難しい問題ではありません。 MCLの本では、ALGORITHMICSの基本を解説しています
FOR Vinin さんが書き込みました >>。
ありがとうございます、でも役に立ちません。なぜなら、WhileループをFORループに置き換えただけだからです。
FOR Urainは(a)を書きました >>。
次の2行は、ちょうど右の配列を形成しているところです。
Bears_array[i]=iBearsPower(NULL,0,PeriodPower,PRICE_CLOSE,i)。
Bulls_array[i]=iBullsPower(NULL,0,PeriodPower,PRICE_CLOSE,i);
Urain iMAOnArray関数は、すでに形成されている配列を渡すべきだと思ったのでしょう。 FORループで形成してもダメでしたね。それは、この関数に渡された配列(iMAOnArray)ではなく、そのNAMEだからです。そして、その配列はPERSONALLYに処理されます。
MA_Bears[i]=iMAOnArray(Bears_array,0,MA_Period,0,MODE_SMA,i) の文字列の i を変更することで実現。
問題を解決しました。見た目よりもずっと奥が深いのです。この処理をExpert Advisorの中だけで適用すれば問題はないのですが、それを使ってチャートを構築すると、とにかくヒヤッとします。ポイントは、配列のインデックスが逆になっていることです。関数 iMAOnArray は直接(左から右)インデックスを持ち、チャートは右から左へのインデックスを持つ。この説明をしてくれたGarfichに感謝します。
FOR Vinin さんが書き込みました>>。
ありがとうございます、でも役に立ちません。なぜなら、WhileループをFORループに置き換えただけだからです。
FOR Urainは(a)を書きました >>。
次の2行は、ちょうど右の配列を形成しているところです。
Bears_array[i]=iBearsPower(NULL,0,PeriodPower,PRICE_CLOSE,i)。
Bulls_array[i]=iBullsPower(NULL,0,PeriodPower,PRICE_CLOSE,i);
Urain iMAOnArray関数は、すでに形成されている配列を渡すべきだと思ったのでしょう。 FORループで形成してもダメでしたね。それは、この関数に渡された配列(iMAOnArray)ではなく、そのNAMEだからです。そして、その配列はPERSONALLYに処理されます。
MA_Bears[i]=iMAOnArray(Bears_array,0,MA_Period,0,MODE_SMA,i) の文字列の i を変更することで実現。
問題を解決しました。見た目よりもずっと奥が深いのです。この処理をExpert Advisorの中だけで適用すれば問題はないのですが、チャートを作るのに使うと、とにかくヒヤヒヤします。ポイントは、配列のインデックスが逆になっていることです。関数 iMAOnArray は直接(左から右)インデックスを持ち、チャートは右から左へのインデックスを持つ。この説明をしてくれたGarfichに感謝します。
何が問題だったのかわかりませんが、Vininさんが正しく書いてくれています(forもwhileも関係ない)、要は、最初にループでデータ配列を形成し、次のループでそこからiMAを形成しているのです。
で、文字列 Bears_array[i]=iBearsPower(NULL,0,PeriodPower,PRICE_CLOSE,i); は配列の i 番目の値のみを埋めるものです。
をループさせないと、配列は生成されません。