打开和关闭第一个1分钟的酒吧

问题描述

我知道在这里问这个问题很遥远,但是我正在寻找一种方法来确定前1分钟的蜡烛是否为红色,这意味着该条在开盘价以下关闭

要做到这一点,我只需要第一分钟柱的开盘价和收盘价,但是我还没有找到一种方法来获得收盘价。

坦率地说是很直接的:

def openValue = open(period = AggregationPeriod.DAY);

获取一个小节的范围也非常简单,因为我们定义了一个范围(1分钟)并返回该范围的高/低值。

如果有人可以提供帮助,我将非常感谢。

谢谢!

解决方法

好的,有人帮我弄清楚了。

def x = barNumber(); //bar

def RTH = getTime() >= RegularTradingStart(getYYYYMMDD()) and 

      getTime() <= RegularTradingEnd(getYYYYMMDD()); 

def TodaysOpen = if RTH and !RTH[1] 

             then open 

             else TodaysOpen[1]; 

def OpenX = if RTH and !RTH[1] 

        then x 

        else double.nan; 

def YesterdaysClose = if !RTH and RTH[1] 

                  then close[1] 

                  else YesterdaysClose[1]; 

def CloseX = if !RTH and RTH[1] 

           then x 

           else double.nan; 

def HighToday = if RTH and !RTH[1] 

            then high 

            else if RTH and high > HighToday[1] 

                 then high 

            else HighToday[1]; 

 def HighX = if high == HighToday 

        then x 

        else double.nan; 

def LowToday = if RTH and !RTH[1] 

           then low 

           else if RTH and low < LowToday[1] 

                then low 

           else LowToday[1]; 

def LowX = if low == LowToday 

       then x 

       else double.nan; 

plot OpenToday = if barNumber() >= HighestAll(OpenX) 

             then HighestAll(if isNaN(close[-1]) 

                             then TodaysOpen 

                             else double.nan) 

             else double.nan; 

 OpenToday.SetStyle(Curve.Long_Dash); 





def firstbarclose = if RTH and !RTH[1] 

             then  close

             else firstbarclose[1]; 



plot CloseBar = if barNumber() >= HighestAll(OpenX) 

             then HighestAll(if isNaN(close[-1]) 

                             then firstbarclose

                             else double.nan) 

             else double.nan; 

closebar.SetStyle(Curve.Long_Dash);