DataMiner Operation RanksMulti

Return the ranks from multiple ranking systems.

Marco Salerno
Written by Marco SalernoLast update 1 year ago

Overview

This operation allows you to download current or historical ranks for multiple ranking systems for a single date. The Ranking system can be specified directly in the script or you can use existing ranking systems. It’s like using a screen with an unlimited number of “Rating” commands.

Input Specification

Default values if not specified are in [brackets]. Any parameter which has a default value is optional and can be omitted. The input script is in YAML syntax. The learn the basics see DataMiner YAML Syntax

Key

Value

Description

Main:              

# Section with main settings

→ Operation:

RanksMulti

→ On Error: 

[Stop],  Continue 

Specifies if you want to stop an operation when there is an error.

→ Precision: 

[2],3,4 

Decimal precision of the output values.

Settings:

# Section with operation settings

→ Vendor:

[FactSet], Compustat

→ Include Names: 

[false], true 

Include company names in the results.

→ Tickers


The stocks to be ranked. If omitted, all stocks in the universe are ranked.

→ Universe

ALLFUND, SP500, etc.

Specifies the Universe to be used in the operation. Specify the name of your custom universe or one of the Portfolio123 Universes

→ PIT method: 

[Complete],  Prelim

“Prelim” includes preliminary data from earnings calls, while “Complete”  only includes quarter or annual report data.

→ As Of Date:

Date used when ranking.

Iterations:           

# Ranking lists

→ -

 

→→ Name:

Iteration name used in the output.

→→ Ranking System:

see DataMiner Ranking Definition

→→ Ranking Method:

[NAsNegative], NAsNeutral

How NA's will be handled.

Sample Input

Main:
    Operation: RanksMulti
    On Error:  Stop

Default Settings:
    PIT Method: Prelim
    As of Date: 2020-12-01
    Universe: SP500

Iterations:
        # Existing ranking system
    -   Name: Core Growth
        Ranking System: "Core: Growth"
        Ranking Method: 'NAsNeutral'

        # Single Formula
    -   Name: EPSExclXorGr%TTM
        Ranking System:
            Rank: Higher # ( [Higher] | Lower | Summation )
            Method: NAsNegative #( [NAsNegative] | NAsNeutral )
            Nodes:
            -   Type: StockFormula
                Rank: Higher # ( [Higher] | Lower | Boolean )
                Formula: EPSExclXorGr%TTM
                Scope: Universe # ( [Universe] | Industry | Sector )

        #Multiple formulas
    -   Name: Value rank
        Ranking System: 
            Rank: Higher # ( [Higher] | Lower | Summation )
            Method: NAsNegative #( [NAsNegative] | NAsNeutral )
            Nodes:
            -   Type: Composite
                Name: Value Composite
                Weight: 100 # ( [0] - 100 where 0 indicates equal weight)
                Rank: Higher # ( [Higher] | Lower | Summation )
                Nodes:
                -   Type: StockFormula
                    Name: EarnYield
                    Weight: 50  # ( [0] - 100 where 0 indicates equal weight)
                    Rank: Higher # ( [Higher] | Lower | Boolean )
                    Formula: EarnYield
                    Scope: Universe # ( [Universe] | Industry | Sector )
                -   Type: StockFormula
                    Name: Pr2SalesTTMvsInd
                    Weight: 50
                    Rank: Lower
                    Formula: Pr2SalesTTM
                    Scope: Industry

Sample Output

Did this answer your question?