kaigouthro

Cleaner Screeners Library

kaigouthro 已更新   
Library "cleanscreens"

Screener Panel.
  • This indicator displays a panel with a list of symbols and their indications.
  • It can be used as a screener for multiple timess and symbols
  • in any timeframe and with any indication in any combination.
    #### Features
  • Multiple timeframes
  • Multiple symbols
  • Multiple indications per group
  • Vertical or horizontal layouts
  • Acceepts External Inputs
  • Customizable colors with 170 presets included (dark and light)
  • Customizable icons
  • Customizable text size and font
  • Customizable cell size width and height
  • Customizable frame width and border width
  • Customizable position
  • Customizable strong and weak values
  • Accepts any indicator as input
  • Only 4 functions to call, easy to use
    #### Usage
  • Initialize the panel with _paneel = cleanscreens.init()
  • Add groupd with _screener = cleanscreens.Screener(_paneel, "Group Name")
  • Add indicators to screeener groups with cleanscreens.Indicator(_screener, "Indicator Name", _source)
  • Update the panel with cleanscreens.display(_paneel)

Thanks @ PineCoders , and the Group members for setting the bar high.

# local setup for methods on our script
import kaigouthro/cleanscreen/1
method Screener  ( panel p, string _name) => cleanscreens.Screener  ( p,  _name) 
method Indicator ( screener s , string _tf, string name, float val) => cleanscreens.Indicator ( s , _tf, name, val) 
method display   ( panel p ) => cleanscreens.display   (  p ) 

init(_themein, loc)
  # Panel init
> init a panel for all the screens

  Parameters:
    _themein (string): string: Theme Preset Name
    loc (int): int :
1 = left top,
2 = middle top,
3 = right top,
4 = left middle,
5 = middle middle,
6 = right middle,
7 = left bottom,
8 = middle bottom,
9 = right bottom
  Returns: panel

method Screener(p, _name)
  # Screener - Create a new screener
### Example:
cleanscreens.new(panel, 'Crpyto Screeners')

  Namespace types: panel
  Parameters:
    p (panel)
    _name (string)

method Indicator(s, _tf, name, val)
  # Indicator - Create a new Indicator
### Example:
cleanscreens.Inidcator('1h', 'RSI', ta.rsi(close, 14))

  Namespace types: screener
  Parameters:
    s (screener)
    _tf (string)
    name (string)
    val (float)

method display(p)
  # Display - Display the Panel
### Example:
cleanscreens.display(panel)

  Namespace types: panel
  Parameters:
    p (panel)

indication
  single indication for a symbol screener
  Fields:
    name (series string)
    icon (series string)
    rating (series string)
    value (series float)
    col (series color)
    tf (series string)
    tooltip (series string)
    normalized (series float)
    init (series bool)

screener
  single symbol screener
  Fields:
    ticker (series string)
    icon (series string)
    rating (series string)
    value (series float)
    bg (series color)
    fg (series color)
    items (indication)
    init (series bool)

config
  screener configuration
  Fields:
    strong (series float)
    weak (series float)
    theme (series string)
    vert (series bool)
    cellwidth (series float)
    cellheight (series float)
    textsize (series string)
    font (series int)
    framewidth (series int)
    borders (series int)
    position (series string)

icons
  screener Icons
  Fields:
    buy (series string)
    sell (series string)
    strong (series string)

panel
  screener panel object
  Fields:
    items (screener)
    table (series table)
    config (config)
    theme (theme type from kaigouthro/theme_engine/1)
    icons (icons)
發布通知:
v2

Quick fixed the markdown shortcuts or local use, and an error in screener descript


Added:
method decorate(p, t)
  Namespace types: panel
  Parameters:
    p (panel)
    t (varient type from kaigouthro/theme_engine/1)

Updated:
init(_themein, loc)
  # Panel init
> init a panel for all the screens

import kaigouthro/cleanscreen/2
method Screener  ( cleanscreen.panel      p , string _name                       ) => cleanscreens.Screener  ( p,  _name) 
method Indicator ( cleanscreen.screener   s , string _tf, string name, float val ) => cleanscreens.Indicator ( s , _tf, name, val) 
method display   ( cleanscreen.panel      p                                      ) => cleanscreens.display   ( p ) 
// Theme names for the theme input a botom (place here)
string  GRP1 = "Settings"
// init panel with theme and location
var loc      = input.int(9, ' Table loc (1-9)', 1, 9)
var _panel   = init(input.string(SILK, 'Theme Choice', 
               options = ["SEE ANNOTATION"]),
loc)
var tfInput  = input.timeframe("",  "Higher timeframe",         group = GRP1)

if barstate.isfirst  
    panel.config.theme      := input.string           ( 'light'   , "Theme Variewnt" , options=['light' , 'dark']             , inline='ic'    , group='Icons' )
    panel.config.cellwidth  := input.float            ( 7.5       , 'cellwidth'      , step=0.5         , inline = "Cellsize" , group=GRP1     )
    panel.config.cellheight := input.float            ( 7.5       , 'cellheight'     , step=0.5         , inline = "Cellsize" , group=GRP1     )
    panel.config.textsize   := input.string           ( size.auto , 'Textsize'       , options=[size.auto, size.small, size.normal, size.large, size.huge] , inline = "set" , group=GRP1    )
    panel.config.font       := input.int              ( 15        , 'Font'           , 1                , 17                  , inline = "set" , group=GRP1    )
    panel.config.framewidth := input.int              ( 10        , 'Framewidth'     , 0                , 20                  , inline = "set" , group=GRP1    )
    panel.config.borders    := input.int              ( 1         , 'Borders'        , -1               , 10                  , inline = "set" , group=GRP1    )
    panel.config.vert       := input.bool             ( true      , 'vert'           ) //int            ( 1                   , 'Borders'      , -1            , 10          )
    // Icons
    panel.icons.strong      := input.string('💸', 'Strong ✼', inline='ic', group='Icons')
    panel.icons.buy         := input.string('💰', 'Buy  ⇡', inline='ic', group='Icons')
    panel.icons.sell        := input.string('🔥', 'Sell ⇣', inline='ic', group='Icons')

// Add groupd with                              _screener  = _paneel.Screener("Group Name")  
// Add indicartors to screeener groups with     _screener.Indication( "Indicator Name", _source)
// Update the panel with                        _paneel.display(_paneel)
  Parameters:
    _themein (string): string: Theme Preset Name
    loc (int): int :
1 = left top,
2 = middle top,
3 = right top,
4 = left middle,
5 = middle middle,
6 = right middle,
7 = left bottom,
8 = middle bottom,
9 = right bottom
  Returns: panel

method Screener(p, _name)
  # Screener - Create a new screener

Example:
cleanscreen.Screeneer(panel, 'Crpyto Screeners')
  Namespace types: panel
  Parameters:
    p (panel)
    _name (string)

method Indicator(s, _tf, name, val)
  # Indicator - Create a new Indicator

Example:
cleanscreen.Inidcator('1h', 'RSI', ta.rsi(close, 14))
  Namespace types: screener
  Parameters:
    s (screener)
    _tf (string)
    name (string)
    val (float)

method display(p)
  # Display - Display the Panel

Example:
cleanscreen.display(panel)
  Namespace types: panel
  Parameters:
    p (panel)

indication
  single indication for a symbol screener
  Fields:
    name (series string): name of the indication
    icon (series string): icon name
    rating (series string): rating
    value (series float): value
    col (series color): color of the indication
    tf (series string): timeframe
    tooltip (series string): tooltip text
    normalized (series float): color value
    init (series bool): init

screener
  single symbol screener
  Fields:
    ticker (series string): ticker name
    icon (series string): icon name
    rating (series string): rating
    value (series float): value
    bg (series color): background color
    fg (series color): foreground color
    items (indication): list of indications
    init (series bool): init

config
  screener configuration
  Fields:
    strong (series float): strong value
    weak (series float): weak value
    theme (series string): theme name
    vert (series bool): vertical layout
    cellwidth (series float): cell width
    cellheight (series float): cell height
    textsize (series string): text size
    font (series int): font index
    framewidth (series int): frame width
    borders (series int): border width
    position (series string): position

icons
  screener Icons
  Fields:
    buy (series string): buy icon
    sell (series string): sell icon
    strong (series string): strong icon

panel
  screener panel object
  Fields:
    items (screener): list of symbols
    table (series table): table object
    config (config): config object
    theme (theme type from kaigouthro/theme_engine/1)
    icons (icons): icons object
Pine腳本庫

本著真正的TradingView精神,作者將此Pine代碼以開源腳本庫發布,以便我們社群的其他Pine程式設計師可以重用它。向作者致敬!您可以私下或在其他開源出版物中使用此庫,但在出版物中重用此代碼受網站規則約束。

免責聲明

這些資訊和出版物並不意味著也不構成TradingView提供或認可的金融、投資、交易或其他類型的意見或建議。請在使用條款閱讀更多資訊。

想使用這個腳本庫嗎?

複製以下行並將其黏貼到您的腳本中。