10핍마다 참조선을 그리는 방법 - 페이지 2

 

물론이야! 그냥 시간이야. 그리고 우리가 해야 할 일은 Time[0]에 시간을 추가하여 사각형이 미래로 확장되도록 하는 것입니다(차트의 오른쪽에서 떨어져 있음). 감사해요. 그건 그렇고, 나는 단순히 Bars 를 사용하여 왼쪽을 찾았습니다.

 datetime timeGap = (Time[ 0 ] - Time[ 1 ]); // get the amount of time between bars
ObjectSet ( "tensRec" +ix,OBJPROP_TIME2,Time[ 0 ] + (timeGap* 150 )); // multiplying timeGap by 150 seems to extend the rectangle off the right-hand window edge

제가 사용하는 색상은 아주 은은합니다. 직사각형을 보려면 거의 찾아야 합니다.

 ObjectSet ( "tensRec" +ix, OBJPROP_COLOR , 0x080808 ) 
 
MisterDog :

물론이야! 그냥 시간이야. 그리고 우리가 해야 할 일은 Time[0]에 시간을 추가하여 사각형이 미래로 확장되도록 하는 것입니다(차트의 오른쪽에서 떨어져 있음). 감사해요. 그건 그렇고, 나는 단순히 Bars 를 사용하여 왼쪽을 찾았습니다.

제가 사용하는 색상은 아주 은은합니다. 직사각형을 보려면 거의 찾아야 합니다.

안녕하세요 미스터독입니다.

사진을 볼까요?,

월요일 시간[0]은 월요일이고 시간[1]은 토요일 입니다. 월요일의 간격입니다 ;).

:디

 

나는 1분 차트를 실행하기 때문에 당신이 말하는 내용이 1분 안에 저절로 해결될 것이라고 추측하고 있습니다. 주말에 무슨 일이 일어나는지 잘 알 것 같아요.

여기 사진이 있습니다.

 
onewithzachy :

안녕하세요 미스터독입니다.

단순한.

1. 한 막대에서 다른 막대까지의 시간 거리를 구합니다. 현재 막대 시간에서 이전 막대 시간을 빼거나 기간에 60초를 곱하여 이를 얻을 수 있습니다. 월요일에 시간 차이가 있으므로 후자를 선택합니다.

나는 월요일에 시간 간격이 없습니다, 나의 첫 번째 바는 일요일에 시작됩니다 ;-)

종료 시간에 PERIOD_W1 * 60을 추가하지 않는 이유는 무엇입니까? 그것은 거의 모든 격차를 커버해야합니다. .. ;-)

 
MisterDog :

제가 사용하는 색상은 아주 은은합니다. 직사각형을 보려면 거의 찾아야 합니다.

이제 나는 당신이 의미하는 바를 "알았습니다".

랩터영국

나는 월요일에 시간 간격이 없습니다, 나의 첫 번째 바는 일요일에 시작됩니다 ;-)

종료 시간에 PERIOD_W1 * 60을 추가하지 않는 이유는 무엇입니까? 그것은 거의 모든 격차를 커버해야합니다. .. ;-)

일요일에 공백이 있습니다 ;).

 
  1. MisterDog :
    말해봐, ObjectDelete와 같은 것에 대해 일종의 "와일드카드"를 사용할 수 있는 방법이 있습니까? 다음과 같이 하고 싶습니다. ObjectDelete ( "tensLines"* ); 즉, "tensLines"로 시작하는 모든 것을 삭제하십시오.
     #define ONDA_BEGINS   0
    #define ONDA_CONTAINS 1
    void ObjectNameDeleteAll( string name, int where=ONDA_BEGINS, int type=EMPTY){
         for ( int iObj= ObjectsTotal ()- 1 ; iObj >= 0 ; iObj--){
             string on   = ObjectName (iObj);
             int     iPos = StringFind (on, name);
             if (iPos < 0 )                         continue ;
             if (iPos > 0 && where == ONDA_BEGINS) continue ;
             if       (type == EMPTY))         ObjectDelete (on);
             else if (type == ObjectType (on)) ObjectDelete (on);
        }
    }
    
    컴파일되지 않았고 테스트되지 않았습니다.

  2. 또한 삭제할 이유가 없으며 새 위치로 옮기기만 하면 됩니다. 내 코드에서 :
     void Rect( string name, datetime T0, double P0, datetime T1, double P1, color clr){
         if (!Show.Objects)   return ;                         #define WINDOW_MAIN 0
         if       ( ObjectMove ( name, 0 , T0, P0 ))     ObjectMove (name, 1 , T1, P1);
         else if (! ObjectCreate ( name, OBJ_RECTANGLE , WINDOW_MAIN, T0, P0, T1, P1 ))
             Alert ( "ObjectCreate(" ,name, ",RECT) failed: " , GetLastError () );
         if (! ObjectSet (name, OBJPROP_COLOR , clr )) // Allow color change
             Alert ( "ObjectSet(" , name, ",Color) [3] failed: " , GetLastError ());
         string   P0t = PriceToStr(P0);           if ( MathAbs (P0 - P1) >= Point )
                P0t = StringConcatenate (P0t, " to " , PriceToStr(P1));
         if (! ObjectSetText (name, P0t, 10 ))
             Alert ( "ObjectSetText(" ,name, ") [1] failed: " , GetLastError ());
    }
    

  3. 랩터영국 :
    종료 시간에 PERIOD_W1 * 60을 추가하지 않는 이유는 무엇입니까? 그것은 거의 모든 격차를 커버해야합니다. .. ;-)
    왜 직사각형을 미래까지 투영하지 않습니까?
     #define INF 0x6FFFFFFF // Not quite infinite, Jul 2029, or 1,879,048,191
    ObjectSet ( "tensRec" +ix,OBJPROP_TIME2,INF);
 
WHRoeder :
왜 직사각형을 미래까지 투영하지 않습니까?

WHRoeder에게 대단히 감사합니다. 가져가겠습니다 :D

[ 편집 : 어쨌든, 많은 감사합니다 ssssssssss ]

 
WHRoeder :
  1. 랩터영국 :
    종료 시간에 PERIOD_W1 * 60을 추가하지 않는 이유는 무엇입니까? 그것은 거의 모든 격차를 커버해야합니다. .. ;-)
    왜 직사각형을 미래까지 투영하지 않습니까?
욕심 부리고 싶지 않았어요 ;-)
 
RaptorUK :
욕심 부리고 싶지 않았어요 ;-)
탐욕은 좋은 것입니다 ;)
 
onewithzachy :
탐욕은 좋은 것입니다 ;)
나는 탐욕이 가장 확실히 아주 나쁜 것이라는 것을 어렵게 배웠습니다. ;-)