int iBarShift( string symbol, int timeframe, datetime time, bool exact=false)
Поиск бара по времени. Функция возвращает смещение бара, которому принадлежит указанное время.
Если для указанного времени бар отсутствует ("дыра" в истории), то функция возвращает, в зависимости
от параметра exact, -1 или смещение ближайшего бара.
Параметры:
symbol - Символьное имя инструмента. NULL означает текущий символ.
timeframe - Период. Может быть одним из периодов графика. 0 означает период текущего графика.
time - Значение времени для поиска.
exact - Возвращаемое значение если бар не найден. FALSE - iBarShift возвращает ближайший.
TRUE - iBarShift возвращает -1.
Пример:
datetime some_time=D'2004.03.21 12:00';
int shift=iBarShift("EUROUSD",PERIOD_M1,some_time);
Print("shift of bar with open time ",TimeToStr(some_time)," is ",shift);
まだわからない!?
0から検索するように明示的に指定しても、関数は4 番を返すため、ya_prefix_78という オブジェクトは削除されます。
具体的には、接頭辞による削除を行うには、==0 を指定するか、!
悪気はないのですが、私はまだ勉強中なので、自分ですべてを解き明かしたいのです。
また、お世話になります
がんばってください。
たぶん、私はそれを十分に明確にしていなかった:
if(StringFind(name, prefix,0) == 0) は、文字列の先頭から排他的に検索します。
手書きの関数でない限り、デフォルトのパラメータは好きではないのですが、フルコントロールが可能です.
頑張ってください。
でも、経験上、自分の仕事を少しも理解できないような怠け者は、助けても無駄だと思うんです...。
具体的な関数名を書きました。
あなたの行動のアルゴリズムも示しました。
自分が何を書いたか考えることすら面倒なのか?
OrderModifyだけが 見つかり、OrderOpenPriceは 以前見た記憶があるのですが、見つけられませんでした。思考に関しては、このような問題はブーリアン関数(if, thenと思う)に属するもので、自分が書いたことを書く必要があると思ったのですが、間違っていますか?
はい。
OK、欲しい関数を渡したら、少なくとも自分でコードに貼り付けられるか?
そうですね。
OK、欲しい関数を渡したら、少なくとも自分でコードに貼り付けられるか?
ある日付と別の日付の間の高値をプログラム的に見つける方法。
バーで高値を検索する機能がありますが、0バーから4バーまでの高値を検索するとのことですが、バーの代わりにバーの日時を使っても良いのでしょうか?
例えば、日付2011.01.05 20:00を確定して、バー(10本または100本)を検索して、高値を検索する機能に貼り付ければいいのでしょうか。
ある日付と別の日付の間の高値をプログラム的に見つける方法。
バーで高値を検索する機能がありますが、0バーから4バーまでの高値を検索するとのことですが、バーの代わりにバーの日時を使っても良いのでしょうか?
例えば、日付2011.01.05 20:00を確定して、バー(10本または100本)を検索して、高値を検索する機能に貼り付ければいいのでしょうか。
缶
if (OrderSymbol()!=Symbol()) continue; // 注文が私たちの通貨でない場合は、スキップします。
私はまだ何も理解していない、私はちょうどフォーラムに入った、私は15秒のために見るが、エラーがあります、私は==を書くべきである、一見して、何かが間違っている場合は申し訳ありません。
Happy Holidays!!!Everyone!!!!