Набросал небольшую, но полезную утилиту, которая умеет
скачивать историю по различным инструментам, доступным в Bloomberg, при наличии доступа к
терминалу. Исторические данные сохраняются в .csv файлы, которые потом легко
импортируются в AmiBroker.
Как ей пользоваться покажу на примере. Допустим требуется
проанализировать состояние российской экономики и её текущие тенденции.
Исследование будет строиться на основе индикаторов доступных в Bloomberg. Найдём их, использую поиск по ключевому слову.
- Скачать файл BloombergDL.zip Разархивировать в папку c:\blp\
- Перетаскиваем список тикеров/идентификаторов индексов в файл _TICKERS.csv
- Запускаем BloombergDownloader.exe
- Нажимаем кнопку подгрузки тикеров. Даты и периодичность можно оставить по умолчанию.
- Жмём GetHistory для начала массовой загрузки и ждём результат. В нижнем окошке будет извещаться о состоянии процесса в таком виде:
Ticker list
is loaded.
Start
downloading...
RUDPRYOY
Index ( Russia GDP 2008 Const Prices Y
) done.
RUIPRNYY
Index ( Russia Industrial Production 2
) done.
RUCPIYOY
Index ( Russia CPI YoY ) done.
RREFRATE
Index ( Russia Refinancing Rate
) done.
RUREFEG
Index ( Russia Foreign Exchange and Go
) done.
RREFRANN
Index ( Russia Refinancing Rate Announ
) done.
RUUER Index ( Russia Unemployment Rate ) done.
RUWCYTD
Index ( Russia CPI Weekly Year-to-Date
) done.
RURSRYOY
Index ( Russia Retail Sales Real YoY
) done.
RUDPGL
Index ( Russia GDP Nominal Prices
) done.
GDDBRUSS
Index ( Russia Debt as a Percentage of
) done.
RUCACAL
Index ( Russia Current Account
) done.
RUWCWOW
Index ( Russia CPI WoW Daily ) done.
RU.POLANC
RUCB Index ( Russia Policy Rates
(Announced ) done.
RUCPIMOM
Index ( Russia CPI MoM ) done.
RU.GDP RUST
Index ( Russia Real GDP by
Expenditure ) done.
RUMEREAL
Index ( Russia Real Monthly Wages YoY
) done.
RUZ1CANY Index ( Russia Monthly Investment In P ) done.
RUCNCNCF
Index ( Russia Consumer Confidence Ove
) done.
RFBCMANU
Index ( Russia Business Confidence Man
) done.
RRBDODRA
Index ( Russia Central Bank Overnight
) done.
RMSNM1
Index ( Russia Money Supply Narrow Def
) done.
ECGDRU 13
Index ( Russia GDP Economic Forecast (
) done.
RUMN1D
Index ( Central Bank of Russia Repo Au
) done.
RUTBAL
Index ( Russia Merchandise Trade Balan
) done.
922.046
Index ( IMF Russia Gold in Mill Fin Tr
) done.
RU.CPI RUST
Index ( Russia CPI ) done.
RU.INPROD
RUST Index ( Russia Industrial
Production ( ) done.
WIRARUSS
Index ( Intl Reserve Assets Excluding
) done.
RUTBEX
Index ( Russia Merchandise Trade Expor
) done.
RUGAGDRY
Index ( Russia Annual GDP 2008 Constan
) done.
RUAUTOTL
Index ( Russia Car Sales Total ) done.
RUCPBI
Index ( Russia Core CPI MoM ) done.
RUAUTTYY
Index ( Russia Car Sales YoY ) done.
RURFUSD
Index ( Russia Reserve Fund USD ) done.
RRBDOREP
Index ( Russia Central Bank Overnight
) done.
RUIPBEER
Index ( Russia Manufacturing Output
Be ) done.
OLE3RUSS
Index ( OECD Russia Composite Leading
) done.
RUMSM2YY
Index ( Russia Money Supply M2 YoY
) done.
RUGNGDNL
Index ( Russia Annual GDP Current Pric
) done.
RUTRBALM
Index ( Russia Trade Balance ) done.
RUDPRQOQ
Index ( Russia GDP 2008 Constant Price
) done.
ECPIRU 13
Index ( Russia CPI Economic Forecast
( ) done.
RUPPNEWY
Index ( Russia PPI 2000=100 YoY ) done.
RUMERDIY
Index ( Russia Monthly Earnings Real D
) done.
RURSRMOM
Index ( Russia Retail Sales Real MoM
) done.
BISBRUR
Index ( Russia Real Effective Exchange
) done.
RU.BNKBAL.ASST
RUCB Index ( Russia Bank Balance Sheets
Ass ) done.
RUFGGFML
Index ( Russia International Reserves
) done.
RUFIDRL
Index ( Russia Foreign Investment Dire
) done.
RU.UNEMP%
RUST Index ( Russia Unemployment Rate
) done.
RU.HPRICE.RU-MOW
ACRU Index ( Russia House Prices Moscow
) done.
RU.EXPORT
RUCB Index ( Russia Exports (Nominal/Value)
) done.
WCAURUSS
Index ( Bloomberg Russia Exchange Mark
) done.
RUCPBYTD
Index ( Russia Core Inflation Year to
) done.
RURRPRC
Index ( Russia Moscow Property Prices
) done.
RU.GDPA
RUST Index ( Russia Annual Real GDP by
Expe ) done.
RU.RESERV
RUCB Index ( Russia International
Reserves ) done.
RUCPNL
Index ( Russia CPI 2000=100 ) done.
RUFRON
Index ( Central Bank of Russia Fixed R
) done.
OERUA046
Index ( OECD Russia Comp Leading
Indic ) done.
RU.EXDEBT
RUCB Index ( Russia External Debt
) done.
RUBUCFBA
Index ( Russia Federal Budget Cumulati
) done.
RUMSM2
Index ( Russia Money Supply M2 ) done.
RUMSMBS
Index ( Russia Monetary Base ) done.
RUIEEGAS
Index ( Russia Export of Natural Gas
i ) done.
RUCPTYTD
Index ( Russia CPI Total Year-to-Date
) done.
RU.CAPINV
RUST Index ( Russia Capital Investment
) done.
RUWFUSD
Index ( Russia Wellbeing Fund USD
) done.
RU.CPI.ELEC
RUST Index ( Russia CPI Electricity
Supply ) done.
IPOPRUS
Index ( IMF Russia Population ) done.
RU.TRADE
RUFC Index ( Russia International
Trade Bal ) done.
RUTBIM
Index ( Russia Merchandise Trade Impor
) done.
RU.PPI.F23O
RUST Index ( Russia Producer Prices
(Output ) done.
RUCACF
Index ( Russia Balance of Payments Cap
) done.
RU.POLEFF
RUCB Index ( Russia Policy Rates
(Effective ) done.
RUCPFYOY
Index ( Russia CPI Food YoY ) done.
RUFR1W
Index ( Central Bank of Russia Fixed R
) done.
RU.FGNINV.BF83
RUST Index ( Russia Foreign
Investment Fore ) done.
IGDSRUS
Index ( IMF Russia General Government
) done.
RUIPRNMM
Index ( Russia Industrial Production 2
) done.
RUFGFTRL
Index ( Russia Foreign Exchange
Reserv ) done.
RUIPBYOY
Index ( Russia Manufacturing Output Be
) done.
RU.CCONF
RUST Index ( Russia Consumer
Confidence ) done.
RU.RESERV.GOLD
RUCB Index ( Russia International
Reserves ) done.
- После того, как дождались все фалы, делаем их импорт в AmiBroker по такому формату:
# Format
definition file generated automatically
# by
AmiBroker's ASCII Import Wizard
$FORMAT
Date_DMY, Time, Close, Open, High, Low, Volume, Aux1, Aux2, Skip, Skip,
Fullname
$SKIPLINES
1
$SEPARATOR
;
$CONT 1
$GROUP 1
$AUTOADD 1
$DEBUG 1
$ALLOWNEG 1
Поля, по усмотрению, меняются местами, особенно при этом желательно
задействовать Aux1 и Aux2, которые изначально
предназначались для Bid и Ask.
Но в данном случае их можно использоваться для каких-то своих кастомных настроек,
вроде коэффициентов PX_TO_BOOK_RATIO или числа упоминаний в ленте новостей на
определённый день NEWS_HEAT_PUB_DMAX. Список возможный полей можно посмотреть в
терминале набрав команду FLDS.
Файл формата BloombergDL.format прилагается, его необходимо скопировать в папку
типа \AmiBroker\Formats\ и затем выполнить импорт скаченных .csv файлов во
вложенной папке Data через пункт меню ImportASCII…
Чтобы изобразить сколько угодно графиков в одном окне
воспользуемся такой AFL функцией:
function
CreateAverageForWatchList( listnum )
{
// retrive comma-separated list of symbols in watch
list
list = CategoryGetSymbols( categoryGroup, listnum );
Average = 0; // just in case there are no watch list members
for( i = 0; ( sym = StrExtract( list, i
) ) != ""; i++ )
{
f = Foreign( sym, "C" );
if( i == 0 ) Average = f;
else Average =
Average + f;
SetForeign(sym);
Plot( f, FullName(), i + 11, styleOwnScale | styleThick );
}
return Average /
i; // divide by number of components
}
Plot( CreateAverageForWatchList( 1 ), "Composite
Index", colorBlack, styleLine|styleThick );
Получился, конечно, каламбур, но зато наглядный пример того,
как по-быстрому
можно загрузить большой объём необходимых данных для дальнейшей
обработки.
Программа распространяется как есть, as is. В дальнейшем надеюсь
получится сделать более продвинутый и функциональный плагин непосредственно
интегрированный в платформу AmiBroker.
Комментариев нет:
Отправка комментария