Функции, задающие свойства графических объектов, а также операции создания ObjectCreate() и перемещения ObjectMove() объектов на графике фактически служат для отправки команд графику. При успешном выполнении этих функций команда попадает в общую очередь событий графика. Визуальное изменение свойств графических объектов производится в процессе...
... /// тут всякие проверки на select,magic,symbol,type и проч
if (OrderOpenTime()>=openBarTime) {
orderFound=true; // нашёлся ордер открытый на текущем баре
break;
}
}
if (!orderFound) {
// не было ордеров на текущем баре - трам пам пам
...
}
ポーズは別に記憶して処理する必要がある。一般に、これは複合型としてより最適に行われます。
閉じたものについては、HISTORYで同様のチェックを行います。
そこで、参考書から自分の場合の例を探してみました。
bool orderFound=false;
// retrieving info from trade history int i,accTotal=OrdersHistoryTotal();
for(i=0;i<accTotal;i++)
{
//---- check selection result if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false)
{
Print("Ошибка при доступе к исторической базе (",GetLastError(),")"); break;
}
// работа с ордером ... if (OrderCloseTime() > iTime(_Symbol,_Period,0))orderFound=true ;// нашёлся ордер закрытый на текущем баре
}
//-----if(OrdersTotal() < 1 && orderFound == false ) {//тут открываем ордера по алгоритму
このような注文は締め切らせていただきます。
if( OrdersTotal() > 0)
{
for(cnt = 0; cnt < OrdersTotal(); cnt++)
{
bool s = OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if( TimeCurrent()>= OrderOpenTime()+ (lifetime * 60)) // lifetime - время в минутах
{
if(OrderType() == OP_BUY && OrderSymbol() == Symbol() && OrderMagicNumber()) // long position is opened
目的は、現在のゼロバーで1つだけ注文を開くことです。
現在のバーですでに決済された注文があった場合、新しい注文は開きません。
そして、そのコードは動作しません。
が、このようにできるのでしょうか?(最後のタイプ - 長方形のもの - のみ、現在動作します。)
は、OBJ_LABEL またはOBJ_RECTANGLE_LABEL タイプを持つすべてのオブジェクトを削除する。
目的は、現在のゼロバーで1つだけ注文を開くことです。
現在のバーですでに決済された注文があった場合、新しい注文は開きません。
コードが機能しない。
datetime openBarTime=iTime(_Symbol,_Period,0);
bool orderFound=false;
for(int pos=OrdersTotal()-1;pos>=0;pos--) {
... /// тут всякие проверки на select,magic,symbol,type и проч
if (OrderOpenTime()>=openBarTime) {
orderFound=true; // нашёлся ордер открытый на текущем баре
break;
}
}
if (!orderFound) {
// не было ордеров на текущем баре - трам пам пам
...
}
を、別々に記憶し、実行する必要があります。一般的には、コンプレックスとしてより良く行われる
HISTORYによるクローズドオーダーの類似チェックについて
グラフィックにテキストを表示する方法は、通常どのようなものでしょうか。 どこでも、テキストだけでいいのでしょうか。
は、https://www.mql5.com/ru/docs/objects ? 正しい方向性を示してください。
グラフィックにテキストを表示するにはどうすればよいのでしょう。
は、https://www.mql5.com/ru/docs/objects ? 正しい方向を示してください。
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_text
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_label
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_text
https://www.mql5.com/ru/docs/constants/objectconstants/enum_object/obj_label
ありがとうございます、試してみます。
datetime openBarTime=iTime(_Symbol,_Period,0);
bool orderFound=false;
for(int pos=OrdersTotal()-1;pos>=0;pos--) {
... /// тут всякие проверки на select,magic,symbol,type и проч
if (OrderOpenTime()>=openBarTime) {
orderFound=true; // нашёлся ордер открытый на текущем баре
break;
}
}
if (!orderFound) {
// не было ордеров на текущем баре - трам пам пам
...
}
ポーズは別に記憶して処理する必要がある。一般に、これは複合型としてより最適に行われます。
閉じたものについては、HISTORYで同様のチェックを行います。
そこで、参考書から自分の場合の例を探してみました。
このような注文は締め切らせていただきます。
ご協力ありがとうございました :)
パワーバランスどこでダウンロードできますか?ありがとうございます(苦笑)。
こんにちは。皆さん、こんにちは。インジケータを探すのを手伝ってください
パワーバランスどこでダウンロードできますか?ありがとうございます。
ホームページで検索すると、結果が表示されます。
は、OBJ_LABEL またはOBJ_RECTANGLE_LABEL タイプを持つすべてのオブジェクトを削除することです。
2.
、呼び出すことができるのは理解できますが、質問はこれです。
ObjectsDeleteAllこの関数は、OBJ_TRENDを指定したループを通過して、正しいオブジェクトタイプのオブジェクトのみを選択するのでしょうか、それとも、必要なオブジェクトのみを一度に選択してループを作成するのでしょうか?