Jaki obiekt wstawić i jakie powinien mieć właściwości aby zasłonić świeczki ?
teraz robie takie cos:
double name = TimeCurrent();
ObjectCreate("Box" + name , OBJ_LABEL, 0, 0, 0, 0, 0);
ObjectSetText("Box" + name, "g", 100, "Webdings");
ObjectSet("Box" + + name , OBJPROP_CORNER, 0);
ObjectSet("Box" + + name, OBJPROP_XDISTANCE, 50);
ObjectSet("Box" + + name, OBJPROP_YDISTANCE, 50 + 100);
ObjectSet("Box" + + name, OBJPROP_COLOR, Black);
ObjectSet("Box" + + name, OBJPROP_BACK, FALSE);
Powstaje czarny obiekt jak na obrazku i on zaslania swieczki ale nie można zmieniać jego rozmiarów i nie przesuwa się razem z wykresem.
Jak to zrobić żeby działało "automagicznie" ?
jak "zamazać" cześć wykresu
jak "zamazać" cześć wykresu
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: jak "zamazać" cześć wykresu
Nie wiem dokładnie, co próbujesz osiągnąć, więc podaje swoje rozwiązanie po prostu jako przykład.
Zobacz czy możesz coś z tego wyciągnąć.
Zobacz czy możesz coś z tego wyciągnąć.
Kod: Zaznacz cały
datetime t = TimeCurrent(); //aktualny czas
ObjectDelete(0,"Box"); //kasowanie obiektu przed każdą zmianą
ObjectCreate(0,"Box" , OBJ_RECTANGLE,0,t - 5000,High[3],t, Low[1]); //tworzysz nowy obiekt na podstawie
//aktualnego czasu i cen
ObjectSet("Box" , OBJPROP_CORNER, 0); //reszta to wiadomo, skopiowane z Twojego psota
ObjectSet("Box" , OBJPROP_FILL, true);
ObjectSet("Box", OBJPROP_COLOR, Black);
ObjectSet("Box", OBJPROP_BACK, FALSE);
Re: jak "zamazać" cześć wykresu
rysowanie rectangle nie działa
ale znalezłem jeszcze inne niecodzienne rozwiązanie
Musimy posiadać w komputerze zainstalowaną czcionkę Webdings.
Wybieramy z menu MT4 obiekt tekst.
Wpisujemy jako tekst literę "g" , rozmiarem czcionki regulujemy wielkość, wybieramy kolor i mamy obiekt zakotwiczony tam gdzie chcemy
proste i fajne
ja dzięki temu zamazuję sobie cześć wykresu którą uważam za różne "szumy"
ale znalezłem jeszcze inne niecodzienne rozwiązanie

Musimy posiadać w komputerze zainstalowaną czcionkę Webdings.
Wybieramy z menu MT4 obiekt tekst.
Wpisujemy jako tekst literę "g" , rozmiarem czcionki regulujemy wielkość, wybieramy kolor i mamy obiekt zakotwiczony tam gdzie chcemy

proste i fajne

ja dzięki temu zamazuję sobie cześć wykresu którą uważam za różne "szumy"
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: jak "zamazać" cześć wykresu
Zwykły prostokąt
Zakrywanie świeczek
Kod: Zaznacz cały
int il = 10; // ilość świeczek
int st = 3; // świeczka początkowa
string name = "Box";
datetime x1 = iTime(NULL,PERIOD_CURRENT,il);
datetime x2 = Time[st];
double y1 = High[iHighest(NULL,PERIOD_CURRENT,MODE_HIGH,il,st)];
double y2 = Low[iLowest(NULL,PERIOD_CURRENT,MODE_LOW,il,st)];
ObjectDelete(0, name);
if(!ObjectCreate(name, OBJ_RECTANGLE, 0, x1, y1, x2, y2)) {}
if(!ObjectFind(0, name))
{
ObjectSetInteger( 0, name, OBJPROP_COLOR, Khaki );
ObjectSetInteger( 0, name, OBJPROP_STYLE, STYLE_SOLID );
ObjectSetInteger( 0, name, OBJPROP_WIDTH, 2 );
ObjectSetInteger( 0, name, OBJPROP_BACK, true );
ObjectSetInteger( 0, name, OBJPROP_HIDDEN, false );
}
Kod: Zaznacz cały
string name = "Box";
int x_pos = 300;
int y_pos = 220;
int x_size = 160;
int y_size = 230;
ObjectDelete(0, name);
if(!ObjectCreate(name, OBJ_RECTANGLE_LABEL, 0, 0, 0)) {}
if(!ObjectFind(0, name))
{
ObjectSetInteger( 0, name, OBJPROP_XDISTANCE, x_pos );
ObjectSetInteger( 0, name, OBJPROP_YDISTANCE, y_pos );
ObjectSetInteger( 0, name, OBJPROP_XSIZE, x_size );
ObjectSetInteger( 0, name, OBJPROP_YSIZE, y_size );
ObjectSetInteger( 0, name, OBJPROP_BGCOLOR, clrKhaki );
ObjectSetInteger( 0, name, OBJPROP_STYLE, STYLE_SOLID );
ObjectSetInteger( 0, name, OBJPROP_WIDTH, 2 );
ObjectSetInteger( 0, name, OBJPROP_BACK, false );
ObjectSetInteger( 0, name, OBJPROP_HIDDEN, false );
}