int bars=Bars(_Symbol,_Period);
if(bars>0)
{
Print("Количество баров в истории терминала по символу-периоду на данный момент = ",bars);
}
else//нет доступных баров
{
//--- видимо, данные по символу не синхронизированы с данными на сервереbool synchronized=false;
//--- счетчик циклаint attempts=0;
// сделаем 5 попыток дождаться синхронизацииwhile(attempts<5)
{
if(SeriesInfoInteger(Symbol(),0,SERIES_SYNCHRONIZED))
{
//--- есть синхронизация, выходим
synchronized=true;
break;
}
//--- увеличим счетчик
attempts++;
//--- подождем 10 миллисекунд до следующей итерацииSleep(10);
}
//--- вышли из цикла по факту синхронизацииif( synchronized)
{
Print("Количество баров в истории терминала по символу-периоду на данный момент = ",bars);
Print("Самая первая в истории терминала дата по символу-периоду на данный момент = ",
(datetime)SeriesInfoInteger(Symbol(),0,SERIES_FIRSTDATE));
Print("Самая первая дата в истории по символу на сервере = ",
(datetime)SeriesInfoInteger(Symbol(),0,SERIES_SERVER_FIRSTDATE));
}
//--- синхронизация данных так и не была достигнутаelse
{
Print("Не удалось получить количество баров на ",_Symbol);
}
}
ロボット開発環境において、オーダーをポジションにするための新しいシステムに直面した。
Question: オーダー#1の結果のポジションは、オーダー#1のマジックを得ることができるのでしょうか?
注文#2によってトリガーされたポジションは、注文#1または注文#2のマジックを取得するのでしょうか?
スクリプトでポジションを開き、マジックナンバーと識別子を確認してください。
ストップポジション=ストップオーダーNo.3の場合、新しいポジションはマジック1(2)と3のどちらを取得するか、つまりトレーディングサーバーはストップと反対注文のどちらを先に処理するか?
スクリプトのあるポーズを開いて、マジコンと識別子を見ればわかります。
の両方があります。が、注文が実行されるまで待つ必要があります。
あなたの証券会社は半年も受注が遅れているのですか? 早急に排除してください。利益が出ませんよ :)))
ストップロスの最短距離で注文を出すことができる
コンディション
if(synchronized)を赤色で表示しました。このエントリーは、以下の項目に対応します。
?同じ機能の中にあるから?真実を確認するために、どのように推測するのですか??1つの機能の中だから?
まず第一に、もし 関数でないなら
真偽を確かめなければならないとは、どのように推測しているのでしょうか。
とは、どのように推測するのでしょうか?
を実行すると、(K>0)
真実かどうかを確認する必要があるのでしょうか?
((K>0)==true) の方が便利だと思いませんか?
まず第一に、もし 関数でないなら
おっとっと。OKです。オペレーター
また、どのように推測しているかというと
を実行すると、(K>0)
真偽を確認すべきなのか?
((K>0)==true) の方が便利だと思いませんか?
なぜなら、(K>0)の場合は、K→0というように、何と比較するかが明示的に書かれているからです。
サンプルではif(K)である。
えっ、K?Kはfalseとして初期化される。続けていくうちに、トゥルーがアサインされました。次に、-if (K)を確認します。えっ、K......?
falseの場合は明示的にif (K!=false)と書かなければならないが、trueの場合は書かないことが判明した?
完全に混乱しています。
...
やっとこさ迷っています。
読み方は以下の通りです。
if(K)-Kが 真 である場合。次のように書いてもよい:if(K==true)
if(!K)- if( K==false ) - このように書いてもよい。
読み方は以下の通りです。
if(K)-Kが 真 である場合。次のように書くことができます:if(K==true)
if(!K)-K が 偽の 場合。if(K==false) のように書いてもよい。
あ、短い文章でいいんだ。ありがとうございます。