#property indicator_separate_windowdatetime LastBarTime=0;
int start()
{
// каждый свежий бар считаем только 1 раз (сразу после закрытия)if (Time[0]!=LastBarTime) // если идёт расчёт всей истории или начался свежий бар
{
LastBarTime=Time[0];
int counted=IndicatorCounted(); if(counted<0) return(-1);
// if (counted>0) counted--; <<< зачем оно???int i=Bars-counted; // варианты: считаем историю(i=кол-во баров), сформирован свежий бара (i=2) ПОЧЕМУ?if (counted<2) i=Bars-2; // для корректного начала расчёта (иначе i и тем более i+1 заглядывают в бездну)Print("!!!!!!TEST Bars-counted=",i); // ПОЧЕМУ =2 ???for (; i>0; i--) // открытый бар не считаем
{
// варианты:// 1) в истории недостаточно баров (меньше трёх): итераций цикла не будет// 2) произошла переинициализация переменных и тогда надо считать историю с нуля (i указывает на 2-й бар слева)// 3) историю уже расчитали, а сейчас сформирован свежий бара: i должна указывать на закрытый бар (i=1)
}
}
return (0);
}
注文送信
スリッページ,// スリッページ
どのような形式か教えてください。
例3 - 0.00003または0.0003を5桁のアカウントへ
4桁のアカウントで3は5桁のアカウントでそれぞれ30ですが、どうしてもというなら5桁のアカウントで3のままでも、再引用が 一定になるだけです。
コード例を教えてください、普通のものは思いつきません。
価格比較を強制的に行う方法(例:MarketInfo(Symbol(),MODE_BID ) 価格比較を開始してからどれだけ価格が上がったか/下がったかで比較します。
変数「A」と「B」をBidで使用する場合、強制的に変数「B」のみを更新し、さらに両者を比較するにはどうすればよいでしょうか。そうしないと、両者は常に同じ値になってしまいます。
それとも、もっとシンプルな組み込み方法があるのでしょうか?
コード例を教えてください、普通のものは思いつきません。
価格比較を強制的に行う方法(例:MarketInfo(Symbol(),MODE_BID ) 価格比較を開始してからどれだけ価格が上がったか/下がったかで比較します。
変数「A」と「B」をBidで使用する場合、強制的に変数「B」のみを更新し、さらに両者を比較するにはどうすればよいでしょうか。そうしないと、両者は常に同じ値になってしまいます。
それとも、もっとシンプルな組み込み方法があるのでしょうか?
時間を考慮する必要があります。最初にBid値を書き込んだ時刻を記憶しておき、一定期間経過後に実際のBid値と比較する。
1. t=0; A=Bid; B=Bid; C=MathAbs(B-A)とする。
2. t=10、B=Bid、C=MathAbs(B-A)、A=Bid。
3. t=20、B=Bid、C=MathAbs(B-A)、A=Bid。
...
したがって、B変数Cは、過去10秒間のBidの差の絶対 値となる。
プログラムのデバッグ中に、デバッガーのウィンドウの「式の値の追跡」で、式の値が「式が評価されませんでした」と書かれている間、アドバイスをお願いします。
といった表現が、Alert関数で 呼び出されたウィンドウに冷静にポップアップ表示される。プログラムは動作し、変数には値が代入され、デバッガでは評価できないため表示されない。なぜ、こんなことができるのか?
時間を考慮しなければならない。最初のBid値を記録した時刻を記憶し、その時刻の実際のBidとある間隔で比較する。
1. t=0; A=Bid; B=Bid; C=MathAbs(B-A)とする。
2. t=10、B=Bid、C=MathAbs(B-A)、A=Bid。
3. t=20、B=Bid、C=MathAbs(B-A)、A=Bid。
...
B変数Cは、このように過去10秒間のBidの差の絶対値を表すことになる。
時間に関する言及はありません。ここでは時間が敵なのです。
時間がないとは?
時間的な基準はありません。ここでは時間が敵なのです。
時間がないとは?
OnInitに価格値の変数を入れておくと、Expert Advisor起動時に価格にバインドされ、必要なものと比較することができます。
時間的な基準はありません。ここでは時間が敵なのです。
時間がないとどうしようもない?
テールレースでの時間はなくてはならないもので、システムとは切っても切れない関係です、残念ですが。投げかけられた質問の中にも、時間が登場します。
価格比較の方法(例:MarketInfo(Symbol(),MODE_BID )価格比較した瞬間から どれだけ高くなるか、安くなるか。
瞬間」とは、そこにある時間、最初の基準点である。
コード例を教えてください、普通のものは思いつきません。
価格比較を強制的に行う方法(例:MarketInfo(Symbol(),MODE_BID ) 価格比較を開始してからどれだけ価格が上がったか/下がったかで比較します。
変数「A」と「B」をBidで使用する場合、強制的に変数「B」のみを更新し、さらに両者を比較するにはどうすればよいでしょうか。そうしないと、両者は常に同じ値になってしまいます。
それとも、もっとシンプルな組み込み方法があるのでしょうか?
LastPrice=0;
NewPrise=0;
if(условие записи LastPrice && NewPrise==0){LastPrice = MarketInfo(Symbol(),MODE_BID);}
if(LastPrice > 0) { NewPrise = MarketInfo(Symbol(),MODE_BID);}
テールレースでは、時間のない時間はありません。残念ですが、システムとは切り離せないものです。この問いの中にも、時間は存在する。
瞬間」、そこには時間があり、出発点がある。
FXに時間はない...。期待される状態の連続的な系列がある...(予想)
しかし、トレーダーにとっては、2つの予想される状態の間に、1時間、1ヶ月、1秒、あるいは1年が経過することもある...。:-)))
それは彼の問題である...トレードを成功させるためには、待ち時間をいかに少なくするかが重要なのですが......。(目指すところにもよりますが...。)
皆さん、こんにちは。IndicatorCounted()について質問です。
ループの中で2つの状態しか期待できないのでしょうか?
1)初期化(静的変数がリセットされ、iが左から2番目のバーを指す)。
2)全編計算される(i=2)。
そして、実は、なぜi=2なのか?i=1やi=0ならわかるが、なぜ2なのか?その2を頼りにしていいのでしょうか?=)
そうでない場合、どのような方法が正しいのでしょうか。連鎖計算をしているので、同じバーを繰り返し処理することができない。
...
なるほど、質問を別の言い方で言ってみよう。ストレートに言えばIndicatorCounted()の代わりに変数を使用することはできますか?
つまり、統計やグローバルの一次初期化は、IndicatorCounted()からの0と常に同じなのでしょうか?