None Table of Contents 1  Generate Lognormal distribution 2  Lognormal is not normal! 3  Single day expected return 3.1  Based on lognormal assumption 3.2  Based on normality assumption 4  Compounded return 4.1  Based on lognormal assumption 4.2  If normality assumed 5  Conclusions Generate Lognormal distribution Suppose we have lognormal returns: from scipy.stats import shapiro, lognorm from pingouin import qqplot from seaborn import histplot logn…

  Clustering using GPU Accelerated DBSCAN in RAPIDS¶ By Paul Hendricks¶ While the world’s data doubles each year, CPU computing has hit a brick wall with the end of Moore’s law. For the same reasons, scientific computing and deep learning has turned to NVIDIA GPU acceleration, data analytics and machine learning where GPU acceleration is…

  Попробуем рекурсивное вычисление чисел Фибоначчи:   def fib(n): if n<2: return n return fib(n-1)+fib(n-2) %timeit fib(20) 100 loops, best of 3: 5.53 ms per loop   Процесс можно ускорить в ~3 раза если выполнить данную операцию в Cython:   %load_ext Cython   %%cython def fib_cython(n): if n<2: return n return fib_cython(n-1)+fib_cython(n-2)   %timeit fib_cython(20)…

Suppose we need to convert array members to integers in an old-fashioned way via a for loop (not as x.astype(int)) : import numpy as np x = np.array([[ 2016., 1., 1.], [ 2016., 12., 31.]]) x array([[ 2.01600000e+03, 1.00000000e+00, 1.00000000e+00], [ 2.01600000e+03, 1.20000000e+01, 3.10000000e+01]]) In a for loop this would have been achieved as: y…

%pwd ‘/home/sergey/Py_Matplotlib’ При отображении двух графиков с двумя осями Y масштаб дополнительной оси Y не всегда являтся оптимальным. Например, на графике ниже не вполне понятно где начинается и где заканчивается «медвежий» рынок. plt.rcParams['figure.figsize'] = (15,3) %load_ext rpy2.ipython %%R -o micex library(rusquant) getSymbols(‘MICEX’, src=’Finam’, from =’1970-01-01′) micex <- data.frame(MICEX) micex.index = micex.index.to_datetime() mx = micex['2007':'2009'] def…

  Иногда позиция «лэйблов» данных, которые Matplotlib размещеает автоматически, не является оптимальной. Например, в следующем графике лэйблы по оси Х сдвинуты влево   %load_ext rpy2.ipython plt.rcParams['figure.figsize'] = (15,5)   %%R -o micex library(rusquant) getSymbols(‘MICEX’, src=’Finam’, from =’1970-01-01′) micex <- data.frame(MICEX)   micex.index = micex.index.to_datetime() micex['MICEX.Close'].plot();   Для того, чтобы изменить позицию лэйблов, у тикеров суеществует свойство…

def add_and_sum(x, y): added = x + y summed = added.sum(axis=1) return summed def call_function(): x = np.random.randn(1000, 1000) y = np.random.randn(1000, 1000) return add_and_sum(x, y) x = np.random.randn(3000, 3000) y = np.random.randn(3000, 3000) %lprun -f add_and_sum add_and_sum(x,y) Timer unit: 1e-06 s Total time: 0.104848 s File: <ipython-input-1-d7add890ce66> Function: add_and_sum at line 1 Line #…

pwd ‘/home/sergey/Py_Models_at_Work’ Распределение объема торгов по часам в течение дня неравномерно. Сначала приблизительно оценим эту неравномерность: Шаг 1. Просуммируем объем всех сделок в течение данного часа по всем торговым дням. Шаг 2. Нормируем полученные значения на общую сумму проведенных сделок. usdrub = pd.read_csv(‘./data/SiZ5.csv’,index_col=[0],usecols=[0,5], parse_dates=True) usdrub.columns = ['volume'] (usdrub.groupby(usdrub.index.hour).agg(‘sum’)/usdrub.sum()).\ plot(kind=’bar’, title=’Распределение объема сделок в течение дня’);…

R по сравнению с Python имеет продвинутые возможности отображения финансовой графики. Ниже, я привожу пошаговый алгоритм для построения графика в пакете quantmod на основе данных, передаваемых из Python Шаг 1: Загрузка данных в Python import pandas as pd micex = pd.read_csv(‘micex.csv’, index_col=’Date’, parse_dates=True) Шаг 2: Передача данных в R Передача данных в R происходит при…

import matplotlib.pyplot as plt import numpy as np import pandas as pd df = pd.DataFrame({‘icao’: ['kk','bb', 'a1', 'a1']}) df icao 0 kk 1 bb 2 a1 3 a1 pd.DataFrame(data = {‘icao’: np.unique(df.icao, return_inverse=1)[1]}) icao 0 2 1 1 2 0 3 0

© 2014 In R we trust.
Top
Follow us: