Pozisyonu kodla kapatmak için zaten bir deneme var. Pozisyon kapatma gerçeği üzerinde kontrolü kullanıcıya emanet etmek doğru görünüyor. 10 deneme her derde deva değil
Terminal 1983 için güncellendi. Grafik nesneleri oluştururken test cihazında anlaşılmaz hatalar görünmeye başladı (dikey çizgiler ve trend çizgileri oluşturuyorum). 1981'de her şey yolundaydı.
Şimdi 4001 hatası alıyorum.
Oluşturma kodu:
//+------------------------------------------------------------------+//| Создаем трендовую линию на чарте |//+------------------------------------------------------------------+void DrawTrendLine( conststring id, // Строковый идентификаторconstdatetime t1, // Время первой точки линииconstdatetime t2, // Время второй точки линииconstdouble price, // Цена обеих точек линииconstcolor clr // Цвет линии
)
{
//--- Формируем имя линииconststring name=_prefix+id+ TimeToString (t1)+ "_" + TimeToString (t2);
//--- Сбрасываем код последней ошибкиResetLastError ();
//---//Print( __FUNCTION__,": Создаем тренд-линию "+name+": t1 = "+TimeToString( t1 )+", t2 = "+TimeToString( t2 )+", price = "+DoubleToString( price ) );//--- Создаем объект, проверяем созданиеif ( ObjectCreate ( 0 ,name, OBJ_TREND , 0 ,t1,price,t2,price)) // Если объект создан
{
//--- Меняем свойства линийObjectSetInteger ( 0 ,name, OBJPROP_COLOR ,clr);
ObjectSetInteger ( 0 ,name, OBJPROP_BACK , true );
ObjectSetInteger ( 0 ,name, OBJPROP_SELECTABLE , false );
ObjectSetInteger ( 0 ,name, OBJPROP_SELECTED , false );
ObjectSetInteger ( 0 ,name, OBJPROP_STYLE , STYLE_DOT );
ObjectSetInteger ( 0 ,name, OBJPROP_RAY_LEFT , false );
ObjectSetInteger ( 0 ,name, OBJPROP_RAY_RIGHT , false );
}
else// Если объект не созданPrint ( __FUNCTION__ , ": ОШИБКА #" , GetLastError (), ": Объект '" +name+ "' не построен! t1 = " + TimeToString (t1)+ ", t2 = " + TimeToString (t2)+ ", price = " + DoubleToString (price));
}
//+------------------------------------------------------------------+//| Создаем вертикальную линию на чарте |//+------------------------------------------------------------------+void DrawVLine( conststring id, // Строковый идентификаторconstdatetime time // Время
)
{
//--- Формируем имя линииconststring name=_prefix+id+ TimeToString (time);
//--- Сбрасываем код последней ошибкиResetLastError ();
//--- Создаем объект, проверяем созданиеif ( ObjectCreate ( 0 ,name, OBJ_VLINE , 0 ,time, 0 )) // Если объект создан
{
//--- Меняем свойства линийObjectSetInteger ( 0 ,name, OBJPROP_COLOR ,_vLineClr);
ObjectSetInteger ( 0 ,name, OBJPROP_BACK , true );
ObjectSetInteger ( 0 ,name, OBJPROP_SELECTABLE , false );
ObjectSetInteger ( 0 ,name, OBJPROP_SELECTED , false );
ObjectSetInteger ( 0 ,name, OBJPROP_STYLE , STYLE_DOT );
}
else// Если объект не созданPrint ( __FUNCTION__ , ": ОШИБКА #" , GetLastError (), ": Объект '" +name+ "' не построен! t1 = " + TimeToString (time));
}
Mevcut mantık bozuldu.
Böyle daha ilginç olacak
Çağrılar değiştirilmezse, daha önce olduğu gibi yorumun üzerine yazılacaktır.
NULL'u açıkça geçerseniz, mevcut yorumu kopyalarız
Mevcut mantık bozuldu.
Bu mantığı kimse kullanmıyor. Özellikle de o belalı olduğu için.
Mevcut mantık bozuldu.
Böyle daha ilginç olacak
Çağrılar değiştirilmezse, daha önce olduğu gibi yorumun üzerine yazılacaktır.
NULL'u açıkça geçerseniz, mevcut yorumu kopyalarız
lütfen bak ve
pozisyonu kapatmak için 10 (!!!) deneme yapıyor :(
vurgulanan satır 2. pozisyon kapatma girişimi :) Ve loglardan da görebileceğiniz gibi pek başarılı değil
Şu anda kullanıyorum:
Pozisyonu kodla kapatmak için zaten bir deneme var. Pozisyon kapatma gerçeği üzerinde kontrolü kullanıcıya emanet etmek doğru görünüyor. 10 deneme her derde deva değil
Mevcut mantık bozuldu.
Böyle daha ilginç olacak
Çağrılar değiştirilmezse, daha önce olduğu gibi yorumun üzerine yazılacaktır.
NULL'u açıkça geçerseniz, mevcut yorumu kopyalarız
Ya da belki daha uygun olurdu
O zaman kimin ihtiyacı varsa, üzerine boş bir değer yazılacaktır. Ve varsayılan olarak kopyalanacaktır.
Sevgili geliştiriciler!
Terminal 1983 için güncellendi. Grafik nesneleri oluştururken test cihazında anlaşılmaz hatalar görünmeye başladı (dikey çizgiler ve trend çizgileri oluşturuyorum). 1981'de her şey yolundaydı.
Şimdi 4001 hatası alıyorum.
Oluşturma kodu:
Geliştiricilere soru.
Yorum parametresi, standart kitaplık işlevi mytrade.PositionClose( const string sembolü, ulong sapma=ULONG_MAX) : const string comment=""
Ne bu, gözden kaçma mı?
Buraya yazmak daha doğru gibi görünüyor:
https://www.mql5.com/ru/forum/302709#comment_10570043