Skip to content

Commit 960a74a

Browse files
Abhijeet RawatGitHub Enterprise
authored andcommitted
feat(examples): searching component id based on name and category
* Added Component ID search based on Component name and Component category. * No need to pre-fetch Component ID, it will be picked up at run time itself.
2 parents 0e676d3 + 1d07b0b commit 960a74a

4 files changed

Lines changed: 18 additions & 6 deletions

File tree

v2/Utilities/examples/multiple_engines_example.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,20 @@
3232
password = "<apiKey>"
3333

3434
pa_document_name = "PA_DOCUMENTS:DEFAULT"
35+
pa_component_name = "Weights"
36+
pa_component_category = "Weights / Exposures"
3537
pa_benchmark_sp_50 = "BENCH:SP50"
3638
pa_benchmark_r_1000 = "BENCH:R.1000"
3739
spar_document_name = "pmw_root:/spar_documents/Factset Default Document"
40+
spar_component_name = "Returns Data"
41+
spar_component_category = "Raw Data / Returns"
3842
spar_benchmark_r_1000 = "R.1000"
3943
spar_benchmark_russell_pr_2000 = "RUSSELL_P:R.2000"
4044
spar_benchmark_russell_prefix = "RUSSELL"
4145
spar_benchmark_russell_return_type = "GTR"
4246
vault_document_name = "PA3_DOCUMENTS:DEFAULT"
47+
vault_component_name = "Exposures"
48+
vault_component_category = "General / Positioning"
4349
vault_default_account = "Client:/analytics/data/US_MID_CAP_CORE.ACTM"
4450
vault_startdate = "FIRST_REPOSITORY"
4551
vault_enddate = "LAST_REPOSITORY"
@@ -60,7 +66,7 @@
6066
components_api = ComponentsApi(api_client)
6167

6268
components = components_api.get_pa_components(pa_document_name)
63-
component_id = list(components.keys())[0]
69+
component_id = list((dict(filter(lambda component: (component[1].name == pa_component_name and component[1].category == pa_component_category), components.items()))).keys())[0]
6470

6571
pa_account_identifier = PAIdentifier(pa_benchmark_sp_50)
6672
pa_accounts = [pa_account_identifier]
@@ -71,7 +77,7 @@
7177
pa_calculation_parameters = {"1": PACalculationParameters(component_id, pa_accounts, pa_benchmarks, pa_dates)}
7278

7379
components = components_api.get_spar_components(spar_document_name)
74-
component_id = list(components.keys())[0]
80+
component_id = list((dict(filter(lambda component: (component[1].name == spar_component_name and component[1].category == spar_component_category), components.items()))).keys())[0]
7581

7682
spar_account_identifier = SPARIdentifier(spar_benchmark_r_1000, spar_benchmark_russell_return_type, spar_benchmark_russell_prefix)
7783
spar_accounts = [spar_account_identifier]
@@ -81,7 +87,7 @@
8187
spar_calculation_parameters = {"2": SPARCalculationParameters(component_id, spar_accounts, spar_benchmark_identifier, spar_dates)}
8288

8389
components = components_api.get_vault_components(vault_document_name)
84-
component_id = list(components.keys())[0]
90+
component_id = list((dict(filter(lambda component: (component[1].name == vault_component_name and component[1].category == vault_component_category), components.items()))).keys())[0]
8591

8692
vault_account_identifier = VaultIdentifier(vault_default_account)
8793
vault_dates = VaultDateParameters(vault_startdate, vault_enddate, frequency)

v2/Utilities/examples/pa_engine_example.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525
password = "<apiKey>"
2626

2727
pa_document_name = "PA_DOCUMENTS:DEFAULT"
28+
pa_component_name = "Weights"
29+
pa_component_category = "Weights / Exposures"
2830
pa_benchmark_sp_50 = "BENCH:SP50"
2931
pa_benchmark_r_1000 = "BENCH:R.1000"
3032
startdate = "20180101"
@@ -44,7 +46,7 @@
4446
components_api = ComponentsApi(api_client)
4547

4648
components = components_api.get_pa_components(pa_document_name)
47-
component_id = list(components.keys())[0]
49+
component_id = list((dict(filter(lambda component: (component[1].name == pa_component_name and component[1].category == pa_component_category), components.items()))).keys())[0]
4850

4951
pa_account_identifier = PAIdentifier(pa_benchmark_sp_50)
5052
pa_accounts = [pa_account_identifier]

v2/Utilities/examples/spar_engine_example.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525
password = "<apiKey>"
2626

2727
spar_document_name = "pmw_root:/spar_documents/Factset Default Document"
28+
spar_component_name = "Returns Data"
29+
spar_component_category = "Raw Data / Returns"
2830
spar_benchmark_r_1000 = "R.1000"
2931
spar_benchmark_russell_pr_2000 = "RUSSELL_P:R.2000"
3032
spar_benchmark_russell_prefix = "RUSSELL"
@@ -46,7 +48,7 @@
4648
components_api = ComponentsApi(api_client)
4749

4850
components = components_api.get_spar_components(spar_document_name)
49-
component_id = list(components.keys())[0]
51+
component_id = list((dict(filter(lambda component: (component[1].name == spar_component_name and component[1].category == spar_component_category), components.items()))).keys())[0]
5052

5153
spar_account_identifier = SPARIdentifier(spar_benchmark_r_1000, spar_benchmark_russell_return_type, spar_benchmark_russell_prefix)
5254
spar_accounts = [spar_account_identifier]

v2/Utilities/examples/vault_engine_example.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
password = "<apiKey>"
2727

2828
vault_document_name = "PA3_DOCUMENTS:DEFAULT"
29+
vault_component_name = "Exposures"
30+
vault_component_category = "General / Positioning"
2931
vault_default_account = "Client:/analytics/data/US_MID_CAP_CORE.ACTM"
3032
vault_startdate = "FIRST_REPOSITORY"
3133
vault_enddate = "LAST_REPOSITORY"
@@ -44,7 +46,7 @@
4446
components_api = ComponentsApi(api_client)
4547

4648
components = components_api.get_vault_components(vault_document_name)
47-
component_id = list(components.keys())[0]
49+
component_id = list((dict(filter(lambda component: (component[1].name == vault_component_name and component[1].category == vault_component_category), components.items()))).keys())[0]
4850

4951
vault_account_identifier = VaultIdentifier(vault_default_account)
5052
vault_dates = VaultDateParameters(vault_startdate, vault_enddate, frequency)

0 commit comments

Comments
 (0)