Индекс цен Light

Введение

Опционы в системе Light рассчитываются путем отсылки к финальной индексной цене.  Эта индексная цена тщательно рассчитывается для того, чтобы сделать обман или манипулирование ценой  крайне проблематичными. Более того, в интересах обеспечения полной прозрачности мы публикуем наш алгоритм и данные за прошлые периоды.

Алгоритм индексной цены

Для того, чтобы усложнить манипулирование ценой, мы ввели концепцию «усеченного среднего». Для любого заданного набора чисел убираются самые высокие и самые низкие значения, после чего мы усредняем оставшиеся средние значения.

Наш индекс цен рассчитывается путем просмотра завершенных сделок на нескольких биржах. Для каждой биржи мы рассчитали усеченную среднюю цену сделки. Затем мы вычислили усеченное среднее из этих средних по биржам.

Исходные данные

Каждый час мы загружаем исходные данные, используемые для расчета нашей индексной цены, в облако Amazon. Эти данные общедоступны для всех. Вы можете получить доступ к нашим исходным файлам данных индекса цена здесь:

proof.light.cx

Ниже представлен пример кода на языке Python, используемого для расчета нашей индексной цены:

#!/usr/bin/python
import json 
with open(data.json) as f: 
    data = json.load(f) 
    for row in data: 
        # First calculate the clipped mean for each exchange 
        exchange_prices = [] 
        for exchange in row['components'].keys(): 
            temp = row['components'][exchange] 
            temp = sorted(temp) 
            del temp[-1] 
            del temp[0] 
            exchange_mean = sum(temp) / len(temp) 
            exchange_prices.append(exchange_mean) 

        # Now take the clipped mean of each exchanges mean 
        temp = sorted(exchange_prices) 
        del temp[-1] 
        del temp[0] 
        price = sum(temp) / len(temp) 
        price = round(price * 100) / 100 # Round to cents 
        print(Price is: {}.format(price))