Announcement

Collapse
No announcement yet.

Location flags for drawShapeRelative

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Location flags for drawShapeRelative

    Hi All,

    I would appreciate a pointer. I am trying to draw a simple shape to highlight and entry position at a specifc price. I am wanting the shape to be printed on top of the candles/price study. Would seem very straight forward using the location flags.

    E.g. drawShapeRelative( this.nOrderBar - nCurrentBarCount, this.nOrderPrice, Shape.DOWNARROW, null, Color.black, Shape.ONTOP, this.sOrderTag );

    It draws the black shape underneath the candle. Likewise the Shape.LEFT/RIGHT alignment flags also do not appear to work?

    I looked through all general eSignal settings and found no general setting that pushes the price study to the front.

    I would appreciate any suggestion/clarification on what I am doing wrong.

    Kind regards,

    Lex

  • #2
    Hi Lex,

    The only way I know to do this is to right click on the chart, then click on "Edit Studies", then click and drag the study you want to plot over price to the top of the list and above the chart symbol.

    This applies to any studies on the list. A study will have precedence and plot over any studies (price included) that are listed below it.


    Wayne
    Last edited by waynecd; 10-31-2009, 10:43 PM.

    Comment


    • #3
      Worked a treat - thank you

      Wayne,

      It worked a treat - and is quite logical in hindsight. I just could not find a reference anywhere! So big thank you.

      There is still the second part of the question in that the location flags do not appear to work? E.g. Shape.TOP/Shape.LEFT etc appear to have no impact?

      At least they print now on top of the candles rather than behind them.

      Thanks you for your help.

      Lex
      Last edited by luthor; 11-01-2009, 12:16 AM.

      Comment


      • #4
        Lex,

        I've played around with the Shape.flags and I agree with you.
        The following flags don't seem to do anything at all:

        PHP Code:
        Shape.LEFT 
         align the shape to the left 
         
        Shape
        .RIGHT 
         align the shape to the right 
         
        Shape
        .TOP 
         align the shape to the top 
         
        Shape
        .BOTTOM 
         align the shape to the bottom 
         
        Shape
        .ONTOP 
         draw the shape on top of the study 

        One of the code lines I used 
        and substituted different flag into is:
            
        drawShapeRelative(barIndex, (close()+open())/2,Shape.UPARROWnullColor.greenShape.ONTOP|Text.TOP,tmp); 
        Wayne
        Last edited by waynecd; 11-01-2009, 10:42 AM.

        Comment


        • #5
          I'm having similar problems with drawImageRelative():

          Image.ONTOP seems to do nothing - the Image is always UNDERNEATH any price bars, if they overlap. Appears to do nothing. Dragging the price bar "study" (thanks, Wayne) to the BOTTOM of the study list puts my study on the visual top layer, but this isn't the default and is a pain to do with every study. (I'm running eSignal 10.5.1721a, dated 9-23-09.)

          Image.TOP, Image.BOTTOM, and the default (neither specified) have the following behavior: With Image.TOP, top of image is aligned with yValue. Image.BOTTOM, bottom is aligned. So far, so good. However, default behavior SHOULD BE middle of image is aligned with the yValue parameter. Instead, default is Image.TOP.

          Behavior for Image.LEFT and Image.RIGHT: Image.RIGHT aligns the right side of the image with the barIndex parameter. Image.LEFT, left is aligned. However, with the default (neither specified), instead of the middle of the image being aligned with the bar it does the same thing as Image.LEFT.

          I have a simple study which should mark local highs and lows. How do I clearly mark a bar with an Image so it's in the middle of the bar so which bar my indicator is referring to is unabiguous? What I want is either default behavior where the middle of the image is aligned with the barIndex/yValue parameter, or something like Image.HORIZONTAL_MIDDLE and Image.VERTICAL_MIDDLE flags that do this.
          Last edited by shortandlong; 11-02-2009, 10:08 AM.

          Comment


          • #6
            Tried drawShapeRelative(). As Wayne said ALL Shape.X flags are totally broken and do nothing.

            Also, for drawShapeX() and drawLineX(), tagID doesn't work as it should - documentation says it's optional or null is accepted. Instead, a non-null value is REQUIRED. drawImageX() is documented correctly and works as documented - it's truly optional.

            tagID really should be optional. Otherwise, since my study can have multiple Shapes per bar, I need a counter so they're all unique. Kind of clutters up the code:
            PHP Code:
            clearShape();  // remove all Shapes
            var tagIDCounter 0;  // used so Shapes aren't replaced

            drawShapeRelative(..., tagIDCounter++);
            ...
            drawShapeRelative(..., tagIDCounter++); 
            If tagID was truly optional, code would simply be:
            PHP Code:
            clearShape();  // remove all Shapes

            drawShapeRelative(...);
            ...
            drawShapeRelative(...); 
            Last edited by shortandlong; 11-02-2009, 12:08 PM.

            Comment


            • #7
              Update

              Dear All,

              Thanks for the useful/constructive feedback and confirmations. I requested eSignal to bug the issues and provide some tracking reference number. However this has been slow in forth coming. I will continue to liaise with eSignal to try and get this resolved and bring some closure to this issue ... but won't let that slow me down with my studies

              Regards,

              Lex

              Comment

              Working...
              X