FactSet.SDK.FactSetQuantFactorLibrary
2.0.8
Prefix Reserved
See the version list below for details.
dotnet add package FactSet.SDK.FactSetQuantFactorLibrary --version 2.0.8
NuGet\Install-Package FactSet.SDK.FactSetQuantFactorLibrary -Version 2.0.8
<PackageReference Include="FactSet.SDK.FactSetQuantFactorLibrary" Version="2.0.8" />
paket add FactSet.SDK.FactSetQuantFactorLibrary --version 2.0.8
#r "nuget: FactSet.SDK.FactSetQuantFactorLibrary, 2.0.8"
// Install FactSet.SDK.FactSetQuantFactorLibrary as a Cake Addin #addin nuget:?package=FactSet.SDK.FactSetQuantFactorLibrary&version=2.0.8 // Install FactSet.SDK.FactSetQuantFactorLibrary as a Cake Tool #tool nuget:?package=FactSet.SDK.FactSetQuantFactorLibrary&version=2.0.8
FactSet Quant Factor Library client library for .NET
The FactSet FactSet Quant Factor Library (QFL) API helps to detect investment themes across global equity markets, incorporate ideas into your portfolio construction process, and transform raw data into actionable intelligence. Over 2000+ items spanning Factor Groups in-
- Classification and Reference Data - Asset Data, Country, Industry, and Size
- Market - Liquidity, Market Sensitivity, Momentum, Technical, Volatility
- Core Fundamentals - Efficiency, Growth, Management, Profitability, Quality, Solvency, Value
- Macro and Cross Asset - Commodity, FX Sensitivity, Debt, Economic
- Alternative - Analyst Sentiment, Corporate Governance, Crowding, Insider Activity.
This .NET package is automatically generated by the OpenAPI Generator project:
- API version: 1.0.1
- Package version: 2.0.8
- Build package: com.factset.sdk.codegen.FactSetCSharpNetCoreClientCodegen
For more information, please visit http://www.factset.com/api
Requirements
- .NET Standard >= 2.0
Installation
.NET CLI
dotnet add package FactSet.SDK.Utils
dotnet add package FactSet.SDK.FactSetQuantFactorLibrary -v 2.0.8
NuGet
nuget install FactSet.SDK.Utils
nuget install FactSet.SDK.FactSetQuantFactorLibrary -Version 2.0.8
Usage
- Generate authentication credentials.
- Setup .NET Standard 2.0 compatible environment.
- Install dependencies.
- Run the following:
[!IMPORTANT] The parameter variables defined below are just examples and may potentially contain non valid values. Please replace them with valid values.
Example Code
using System;
using System.Threading.Tasks;
using FactSet.SDK.Utils.Authentication;
using FactSet.SDK.FactSetQuantFactorLibrary.Api;
using FactSet.SDK.FactSetQuantFactorLibrary.Client;
using FactSet.SDK.FactSetQuantFactorLibrary.Model;
namespace Example
{
public static class GetFactorsExample
{
public static async Task Main()
{
var config = new FactSet.SDK.FactSetQuantFactorLibrary.Client.Configuration();
// Examples for each supported authentication method are below,
// choose one that satisfies your use case.
/* (Preferred) OAuth 2.0: FactSetOAuth2 */
// See https://github.com/FactSet/enterprise-sdk#oauth-20
// for information on how to create the app-config.json file
//
// The confidential client instance should be reused in production environments.
// See https://github.com/FactSet/enterprise-sdk-utils-dotnet#authentication
// for more information on using the ConfidentialClient class
ConfidentialClient confidentialClient = await ConfidentialClient.CreateAsync("/path/to/app-config.json");
config.OAuth2Client = confidentialClient;
/* Basic authentication: FactSetApiKey */
// See https://github.com/FactSet/enterprise-sdk#api-key
// for information how to create an API key
// config.Username = "USERNAME-SERIAL";
// config.Password = "API-KEY";
var apiInstance = new FactorsApi(config);
var ids = new List<string>(); // List<string> | Security or Entity identifiers. FactSet Identifiers, tickers, CUSIP and SEDOL are accepted as inputs. **NOTE:** Fixed Income identifiers, ETFs, and Options are not accepted in this endpoint. <p>***Maximum possible ids limit** = 3500 per request*</p> `NOTE:` *The maximum possible ids limit for a request will **decrease** based on the size of the historical date range, the number of factors or factorGroups requested.* *<p> GET Method URL request lines are also limited to a total length of 8192 bytes (8KB). In cases where the service allows for thousands of ids, which may lead to exceeding this request line limit of 8KB, its advised for any requests with large request lines to be requested through the respective \"POST\" method.</p>*
var factors = new List<string>(); // List<string> | Array of individual Factor Items requested. For a list of all available factors and descriptions use the `/library` endpoint.***<p>factors limit** = 20 individual factors per request*
var startDate = "2020-11-30"; // string | The start date requested for a given date range in **YYYY-MM-DD** format. Future dates (T+1) are not accepted in this endpoint.
var endDate = "2021-11-30"; // string | The end date requested for a given date range in **YYYY-MM-DD** format. Future dates (T+1) are not accepted in this endpoint. **NOTE:** The input endDate must come AFTER the input startDate.
var factorGroups = new List<string>(); // List<string> | Fetch a collection of Factors that fall within one of the below \"groups\". For example, resting factorGroup=Momentum will return all factors under the momentum group. To know which items are available in each group use the /library endpoint.***<p>factor groups limit** = 5 factor groups per request* ### Classification and Reference |Group|Descriptions| |- --|- --| |Asset_Data|Easily input security-level metadata into your quantitative research process. Common metrics used include Days Since Report, Days to Report, ADR Flag, and Minimum Lot Size. Integrate variables from FactSet Reference, FactSet Fundamentals, and FactSet Estimates databases to impose portfolio constraints and access general reference data.| |Country|Evaluate securities based on the countries in which they have the highest exposure. Analyze company-level exposures across various countries and measure how concentrated a firm’s business is within their countries of operation. Metrics are derived from FactSet Reference and FactSet Geographic Revenue Exposure (GeoRev) databases and include Country Exposure, Country of Incorporation, and Country of Risk.| |Industry|Classify securities based on the industries in which they generate the majority of their revenues. Incorporate variables from the FactSet Revere Business and Industry Classification System (RBICS) database to measure how concentrated a firm’s business is within the industries they operate and across various sub-sectors. Common metrics include Industry Classifications, Industry Exposures, and Industry Concentration.| |Size|Assess how large or small a company is relative to industry peers. Create size buckets and clarify the systematic portion of company returns using variables from FactSet Prices, FactSet RBICS, FactSet Fundamentals, and FactSet Estimates. Common metrics include Size Classification, Enterprise Value, and Market Share.| ### Market Factors |Group|Descriptions| |- --|- --| |Liquidity|Assess how investible a security is, as well as the potential market impact of a trade using signals built off pricing and volume data from FactSet Prices. Integrate factors as components into your alpha models to evaluate systematic risk or input them into your portfolio construction models to dictate how much of an asset can be bought or sold based on liquidity levels. Common metrics include Average Dollars Traded, Share Turnover, and Bid Ask Spread.| |Market Sensitivity|Clarify the common variations in stock returns attributable to the performance of their local market indices. Leverage regressions performed between security-level and market-index returns across different return horizons and methodologies. Metrics are derived from FactSet Prices and include Beta R-Squared, Up Market Beta, and Down Market Beta.| |Momentum|Analyze the historical momentum of a security and uncover how each underlying data item, calculation, and horizon can be meaningful in different situations. Metrics are derived from FactSet Prices and include 52W Position, Return Momentum, and Velocity.| |Technical|Forecast the direction of future price movements based on historical market data and leverage heuristic or pattern-based signals from FactSet Prices. Common metrics include Average True Range, Ulcer Performance Index, and Money Flow Volume.| |Volatility|Measure the uncertainty in asset price movements with indicators from the FactSet Prices database. Capture various forms of uncertainty by employing statistical calculations on security performance data. Common metrics include Return Volatility, Semivariance, and Turbulence.| ### Core Fundamentals |Group|Descriptions| |- --|- --| |Efficiency|Leverage core financial data to determine how effectively a company uses its assets, collects payments, and operates its business. Most variables are measured as turnover ratios and include changes over time to provide transparency into the efficiency of each business process. Metrics are derived from FactSet Fundamentals and FactSet Estimates and include Asset Turnover, Receivables Turnover, and Cash Conversion Cycle| |Growth|Measure a company’s ability to grow faster than its peers. Compare the future expected growth of a company with its historical growth and view growth rates adjusted for stability. Integrate variables from FactSet RBICS, FactSet Fundamentals, and FactSet Estimates to analyze growth rates over multiple horizons including Market Share, Sales, and EPS Growth| |Management|Gain insight into how management finances their business and the decisions they make that impact the core financial statements. These choices are reflected in changes to total debt or equity, the overall size of the balance sheet, and decisions around the accounting methods used. Metrics are derived from FactSet Fundamentals and FactSet Estimates and include Capital Expenditures (CAPEX) Growth, Equity Buyback Ratio, and Depreciation & Amortization Variability| |Profitability|Evaluate a company’s ability to generate income relative to its revenue or balance sheet metrics. Identify lucrative businesses relative to their industry, region, and size profile. Metrics are derived from FactSet Fundamentals and FactSet Estimates and include Return on Assets, Return on Invested Capital Change, and Return on Total Equity |Quality|Understand the overall financial health and quality of a company’s business. Use historical data from FactSet Fundamentals to analyze balance sheet health, stability of earnings and profit margins, variability in cash flows, and trends that look beyond headline financial metrics. Common metrics include Cash Earnings Ratio Variability, Revenue Stability, and Accruals Ratios. Composite quality scores (i.e., the Piotroski F-Score, Beneish M-Score, and Altman Z-Score) and their underlying components are also available as individual metrics.| |Solvency|Measure a company’s ability to meet their short- and long-term financial obligations and determine the degree of leverage employed to run their business. Incorporate financial ratios from FactSet Fundamentals and FactSet Estimates to quantify liability or debt obligation relative to earnings, cash flows, equities, or items from the asset side of the balance sheet. Common metrics include Current Ratio, Current Asset Liquidity, and Debt to Equity Change.| |Value|Quickly determine how cheap or expensive a company is based on common security-level characteristics from FactSet Prices, FactSet Fundamentals, and FactSet Estimates. Apply factors as an intersection between other factors for a more customized analysis, such as finding the cheapest stocks among the highest quality companies. Common metrics include Earnings Yield, Book to Price, and Revenue to Enterprise Value.| ### Macro and Cross-Asset |Group|Descriptions| |- --|- --| |Commodity|Quantify the impact movements in the commodity markets have on equity prices. Metrics are derived from FactSet Prices and allow you to measure company-level exposure to commodities such as Gold, Crude Oil, Coffee, and Live Cattle.| |FX_Sensitivity| Analyze security-level sensitivity to fluctuations in the currency markets. Metrics are derived from FactSet Prices and allow you to identify company exposures to currencies such as USD, EUR, JPY, and CNY. |Debt|Uncover details related to company debt through issuer-level factor exposures. Use the FactSet Fixed Income Prices & Derived Analytics database to aggregate metrics at the company level. Common metrics include Effective Duration, Option Adjusted Spread, and Yield to Worst.| |Economic|Capture daily security exposures to leading economic indicator forecasts. Leverage the Quant Factor Library’s detailed country exposure model to attribute economic measures to individual companies. Metrics are derived from FactSet Economic Estimates and include Real GPD Growth, Industrial Production Growth, Core CPI Inflation, and Policy Rates. ### Alternative |Group|Descriptions| |- --|- --| |Analyst_Sentiment|Analyze a security’s outlook from the perspective of a sell-side research analyst. Leverage consensus estimates data from the FactSet Estimates database to analyze the directional change in estimate revisions for various financial statement items and time periods. Common metrics include Sales Estimate Revisions, Free Cash Flow Estimate Revisions, and Robust Estimate Revisions.| |Corporate_Governance|Identify companies with strong corporate governance. Analyze the profile of a company’s management and board based on tenure, diversity, compensation incentives, and more factors from the FactSet People database. Common metrics include Management - Average Age, Board - Activist Member, and Executives - Average Bonus.| |Crowding|Understand the degree to which investors own, purchase, or sell a security. View characteristics of each investor’s profile and characterize crowding from passive, active, institutional, ETF, and hedge fund investors. Use metrics from FactSet Ownership, FactSet Prices, and FactSet Fundamentals to help identify potential effects of crowding such as whether certain investor types are acquiring or divesting from a given security. Common metrics include Active Buyer Percent of Portfolio Change, ETF Days to Liquidate, and Hedge Fund Percent Outstanding.| |Insider_Activity|Measure the degree to which insiders own, purchase, or sell their company’s stock. Analyze the sentiment of those with access to material non-public information or determine how the amount of insider ownership may impact management’s key business decisions. Metrics are derived from FactSet Ownership and include Insider Percent Outstanding, Insider Number of Buys, and Insider Seller Position Change. |ESG|Analyze Environmental, Social and Governance (ESG) behavior, which are aggregated and categorized into continuously updated, material ESG scores to uncover risks and opportunities from companies. Truvalue Labs focuses on company ESG behavior from external sources and includes both positive and negative events that go beyond traditional sources of ESG risk data. (optional)
var frequency = "D"; // string | Controls the display frequency of the data returned. * **D** = Daily * **W** = Weekly, based on the last day of the week of the start date. * **M** = Monthly, based on the last trading day of the month. * **AM** = Monthly, based on the start date (e.g., if the start date is June 16, data is displayed for June 16, May 16, April 16 etc.). * **CQ** = Quarterly based on the last trading day of the calendar quarter (March, June, September, or December). * **AY** = Actual Annual, based on the start date. * **CY** = Calendar Annual, based on the last trading day of the calendar year. (optional) (default to M)
try
{
// Retrieves Quant Factors for a small list of ids.
FactorsResponse result = apiInstance.GetFactors(ids, factors, startDate, endDate, factorGroups, frequency);
Console.WriteLine(result.ToJson());
}
catch (ApiException e)
{
Console.WriteLine("Exception when calling FactorsApi.GetFactors: " + e.Message );
Console.WriteLine("Status Code: "+ e.ErrorCode);
Console.WriteLine(e.StackTrace);
}
}
}
}
Using a Proxy
To use the API client with a HTTP proxy, setup a System.Net.WebProxy
Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;
Documentation for API Endpoints
All URIs are relative to https://api.factset.com/content
Class | Method | HTTP request | Description |
---|---|---|---|
FactorsApi | GetFactors | GET /factset-quant-factor-library/v1/factors | Retrieves Quant Factors for a small list of ids. |
FactorsApi | GetFactorsForList | POST /factset-quant-factor-library/v1/factors | Retrieves Quant Factors for a large list of ids. |
HelperApi | GetFactorLibrary | GET /factset-quant-factor-library/v1/library | Retrieve a list of all available factors with relevant meta data. |
HelperApi | GetFactorLibraryList | POST /factset-quant-factor-library/v1/library | Retrieves a list of all available factors with relevant meta data. |
Documentation for Models
- Model.ErrorResponse
- Model.ErrorResponseSubErrors
- Model.Factors
- Model.FactorsRequest
- Model.FactorsResponse
- Model.Frequency
- Model.Library
- Model.LibraryRequest
- Model.LibraryResponse
Documentation for Authorization
FactSetApiKey
- Type: HTTP basic authentication
FactSetOAuth2
- Type: OAuth
- Flow: application
- Authorization URL:
- Scopes: N/A
Contributing
Please refer to the contributing guide.
Copyright
Copyright 2022 FactSet Research Systems Inc
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- FactSet.SDK.Utils (>= 1.0.0)
- JsonSubTypes (>= 1.8.0)
- Newtonsoft.Json (>= 13.0.1)
- Polly (>= 7.2.2)
- RestSharp (>= 106.15.0)
- System.ComponentModel.Annotations (>= 5.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.0.10 | 91 | 7/11/2024 |
2.0.9 | 125 | 4/10/2024 |
2.0.8 | 106 | 2/28/2024 |
2.0.7 | 1,255 | 10/25/2023 |
2.0.6 | 159 | 8/30/2023 |
2.0.5 | 147 | 8/11/2023 |
2.0.4 | 152 | 6/6/2023 |
2.0.3 | 152 | 5/11/2023 |
2.0.2 | 243 | 3/1/2023 |
2.0.1 | 246 | 2/24/2023 |
2.0.0 | 290 | 1/26/2023 |
1.0.1 | 304 | 12/15/2022 |
1.0.0 | 372 | 8/31/2022 |
0.21.0 | 406 | 7/21/2022 |
0.20.0 | 405 | 5/24/2022 |
0.9.1 | 424 | 2/14/2022 |
0.9.0 | 418 | 2/2/2022 |
Refer to Changelog on GitHub source repository