Изучение доли рынка скорректированного CRSP: методы и примеры кода

На финансовых рынках индекс, взвешенный по капитализации (CWI), обычно используется для оценки эффективности определенного сектора или рынка. Однако CWI не учитывает различия в рыночной капитализации отдельных компаний, входящих в индекс. Чтобы устранить это ограничение, исследователи разработали концепцию CRSP (Центра исследований цен на ценные бумаги) с учетом рыночной доли в качестве альтернативной методологии построения рыночных индексов. В этой статье мы рассмотрим различные методы расчета и реализации CRSP с учетом рыночной доли, а также примеры кода на Python.

Метод 1: скорректированный CRSP с равной долей рынка.
Один из простых подходов заключается в присвоении равных весов каждой акции в индексе, независимо от ее рыночной капитализации. Вот пример фрагмента кода для расчета значения индекса:

# Equal-Weighted Market Share Adjusted CRSP
def equal_weighted_CRSP(prices):
    weights = [1 / len(prices) for _ in range(len(prices))]
    index_value = sum(prices * weights)
    return index_value
# Example usage
prices = [100, 150, 200, 120, 80]
index_value = equal_weighted_CRSP(prices)
print("Equal-Weighted CRSP Index Value:", index_value)

Метод 2: CRSP, взвешенный по рыночной капитализации и скорректированный по доле рынка.
Другой распространенный подход заключается в присвоении весов на основе рыночной капитализации. Вот пример фрагмента кода для расчета значения индекса:

# Market-Capitalization Weighted Market Share Adjusted CRSP
def market_cap_weighted_CRSP(prices, market_caps):
    total_market_cap = sum(market_caps)
    weights = [cap / total_market_cap for cap in market_caps]
    index_value = sum(prices * weights)
    return index_value
# Example usage
prices = [100, 150, 200, 120, 80]
market_caps = [1000, 2500, 5000, 1800, 1200]
index_value = market_cap_weighted_CRSP(prices, market_caps)
print("Market-Cap Weighted CRSP Index Value:", index_value)

Метод 3: Скорректированная доля рынка в свободном обращении CRSP
В некоторых случаях может быть более целесообразным использовать рыночную капитализацию в свободном обращении вместо общей рыночной капитализации. Рыночная капитализация в свободном обращении учитывает только акции, доступные для торговли на рынке. Вот пример фрагмента кода для расчета значения индекса:

# Free-Float Market Share Adjusted CRSP
def free_float_CRSP(prices, free_float_caps):
    total_free_float_cap = sum(free_float_caps)
    weights = [cap / total_free_float_cap for cap in free_float_caps]
    index_value = sum(prices * weights)
    return index_value
# Example usage
prices = [100, 150, 200, 120, 80]
free_float_caps = [800, 2000, 4000, 1440, 960]
index_value = free_float_CRSP(prices, free_float_caps)
print("Free-Float CRSP Index Value:", index_value)

Скорректированная доля рынка CRSP предоставляет альтернативную методологию построения рыночных индексов, учитывающих различия в рыночной капитализации отдельных компаний. В этой статье мы исследовали три метода расчета CRSP с учетом рыночной доли, включая равновзвешенные, взвешенные по рыночной капитализации и взвешенные по рыночной капитализации подходы. Эти методы можно реализовать с использованием фрагментов кода Python, представленных выше. Учитывая корректировки доли рынка, инвесторы и исследователи могут получить представление об эффективности индекса, который лучше отражает общую динамику рынка.