Connect with us

Привет, что-то ищете?

The Times On Ru
  1. The Times On RU
  2. /
  3. Бизнес
  4. /
  5. Предлагает коллекцию игр

Бизнес

Предлагает коллекцию игр

В августе объем биржевых торгов юанями с поставкой «завтра» достиг 2,8 трлн рублей, превысив результат годичной давности на 70%. В этот период курсы ведущих валют также быстро росли. Во многом такая ситуация определялась выходом крупных эмитентов с выпусками квазивалютных облигаций, что привело к увеличению спроса на валюту со стороны банков. По оценкам «Ъ», основанным на данных участников рынка, в августе объем торгов юанем с расчетом «завтра» составил 2,8 трлн руб. Этот результат оказался на 6% выше июля и более чем на 70% выше аналогичного периода 2025 года. В целом объем прошедшего месяца стал третьим за весь период наблюдения. За счет меньшего количества торговых сессий среднедневной объем торгов за месяц увеличился на 15,7%, до 133,4 млрд руб. В этом году средний показатель был выше только в марте (144,5 млрд руб.), когда общий результат оказался рекордным (3,2 трлн руб.).

Текущая ситуация на рынке интересна тем, что она произошла при низкой активности экспортеров. По словам начальника аналитической службы банка «Зенит» Владимира Евстифеева, в августе крупнейшие участники внешнеэкономической деятельности продали валюту на $2,5 млрд. Этот результат оказался на $0,3 млрд больше, чем в июле, но в 2,5–5 раз меньше, чем в этом месяце за предыдущие два года. Основной причиной стали низкие цены на нефть, царившие на рынке в начале лета. По данным Минэкономразвития, средняя цена нефти Юралс в июне составила $63,52 за баррель, в июле — $59,6 за баррель, а в мае она превысила $86,5 за баррель.

Произошла ошибка при загрузке данных индикаторного графика.

“B-Chronograph”. Курс юаня к рублюИнтерактивный инструмент «Коммерсантъ-Хронограф» собирает тематический контекст индикатор из архива «Коммерсанта» и формирует краткие описания с с использованием технологий искусственного интеллекта (ИИ). Автоматическое резюме может содержать неточности — для полноты читайте оригинал статьи по кнопке «Еще». Виджет AI обогащает график связанными событиями. Нажмите на сплошной значок подпишитесь, чтобы увидеть описание и перейдите в архив. Коммерсантъ опубликовал публикацию на тему Данные: Московская Биржа  /  <диапазон> по теме (functon(){(асинхронная функция() { const wdgetElement = getTargetElement(document.currentScrpt, ‘.moex_wdget’); const tabsElement = wdgetElement.querySelector(‘.moex_tabs’); const spnnerElement = wdgetElement.querySelector(‘.moex_wdget_loader’); const errorElement = wdgetElement.querySelector(‘.moex_wdget_error’); const selectElement = tabsElement.querySelector(‘.moex_chart__select’); constchartRateElement = tabsElement.querySelector(‘.moex_chart__rate’); constchartDateElement = tabsElement.querySelector(‘.moex_chart__date’); const noteIconElement = tabsElement.querySelector(‘.moex_tabs__note-con’); const noteElement = tabsElement.querySelector(‘.moex_tabs__note’); const noteCloseElement = tabsElement.querySelector(‘.moex_tabs__note .close’); const nfoPannelElement = wdgetElement.querySelector(‘.moex_nfo-pannel’); const nfoPannelContentElement = wdgetElement.querySelector(‘.moex_nfo-pannel__content-wrapper’); const nfoPannelShadeElement = wdgetElement.querySelector(‘.pannel-shade’); const nfoPannelShowMoreElement = nfoPannelShadeElement.querySelector(‘.show-more’); const nfoPannelShowLessElement = nfoPannelElement.querySelector(‘.show-less’); const tmestamp = новая дата().getTme(); пусть LastActivePont = null; пусть currSubcategory = null; пусть currIntervalId = 6; пусть категории = []; пусть графДанные = []; пустьchartData = []; пусть документы = []; пусть resCatalog = []; пустьchartDataDocs = []; пусть тире = []; пусть GraphDataGold = []; пустьchartDataGold = []; пусть диаграмма = ноль; константные имена месяцев = { 1: { коротко: «Ян», полное: ‘Январь’ }, 2:{ коротко: «февраль», полное: ‘Февраль’ }, 3:{ коротко: «мар», полное: ‘Март’ }, 4: { коротко: «Апрель», полное: ‘Апрель’ }, 5:{ короткое: «Май», полное: ‘Май’ }, 6:{ коротко: «июнь», полное: ‘Июнь’ }, 7:{ короткое: «Июль», полное: ‘Июль’ }, 8:{ коротко: «Август», полное: ‘Август’ }, 9:{ коротко: «сентябрь», полное: ‘Сентябрь’ }, 10:{ коротко: «Октябрь», полное: ‘Октябрь’ }, 11: { коротко: «Ноябрь», полное: ‘Ноябрь’ }, 12: { коротко: ‘декабрь’, полное: ‘Декабрь’ }, }; const curIntervals = [4, 5, 6, 7, 8, 9, 10] константные интервалы = { 4: «3 месяца», 5: «6 месяцев», 6: «1 год», 7: «С начала года», 8: «3 года», 9: «5 лет», 10: «Все время» }; functon getTargetElement (элемент, селектор) { пусть предыдущая = element.prevousElementSblng; пока (предыдущий) { f (prev.matches(селектор)) return prev; е (prev.matches(‘.ncut’)) { return prev.querySelector(селектор); } предыдущая = предыдущая.prevousElementSblng; } вернуть ноль; } const loadScrpt = (url) => { вернуть новое обещание((разрешить, отклонить) =>{ f (wndow.Hghcharts?.StockChart) { вернуть решение (wndow.Hghcharts); } let scrpt = document.querySelector(‘scrpt[src*=»hghstock»]’); f (истина || !scrpt) { scrpt = document.createElement(‘scrpt’); scrpt.src = URL; scrpt.async = правда; document.head.appendChld(сценарий); } константа lmt = 10; пусть повторит = 0; const ntervalID = setInterval(() => { f (wndow.Hghcharts?.StockChart) { ClearInterval (ID интервала); разрешить (wndow.Hghcharts); } else f (++retry >= lmt) { ClearInterval (ID интервала); ignore(new Error(‘Превышен лимит времени загрузки Hghcharts’)); } }, 500); }); }; constclearElement = (элемент) =>{ whle(element.frstChld) { element.removeChld(element.frstChld); } }; const showErrorMsg = () => { spnnerElement.remove(); tabsElement.classLst.add(‘hde’); errorElement.classLst.remove(‘hde’); }; const showNote = () => { noteElement.classLst.remove(‘hde’); } const closeNote = () =>{ noteElement.classLst.add(‘hde’); } const ntCategory = () => { const CategoryId = wdgetElement.dataset.categoryId; const subcategoryId = wdgetElement.dataset.graphAp; const currCategory = categores.fnd((cat) => cat.Id == CategoryId); currSubcategory = currCategory.Indces.fnd((sub) => sub.Id == subcategoryId); }; //переключаем временные интервалы const updateTabSelect = () =>{ curIntervals.forEach((dx) => { const optonElement = document.createElement(‘opton’); optonElement.value = dx; optonElement.textContent = ntervals[dx] optonElement.selected = dx === currIntervalId selectElement.append(optonElement); }); }; const updateChartRate = (значение, индекс) =>{ пусть goldRate = ноль е (!индекс) { let selectedDoc =chart.seres[1].ponts.fnd(flag => flag.state === ‘select’) е (!selectedDoc) { selectedDoc =chart.seres[1].ponts[chart.seres[1].ponts.length — 1] } const selectedDate =chartDataGold.reduce((аккумулятор, currentValue) =>{ пусть currentDate = новая дата (currentValue[0]) currentDate.setHours(0, 0, 0, 0) f (currentDate.getTme() tem[0] === selectedDate) } еще { goldRate = диаграммаDataGold[ndex] } chartRateElement.nnerHTML = »; const goldRateEl = document.createElement(‘span’); goldRateEl.textContent = `${formatStrng(formatNumber(goldRate[1]))} ${currSubcategory?.CurrencySymbol}` chartRateElement.append(goldRateEl) chartDateElement.textContent = `${formatDateTme(goldRate[0])[1]}`; }; const updateInterval = (value = currSubcategory.IntervalTypes[0]) => { закрытьИнфоПаннел() ОчиститьИнфоПаннел() currIntervalId = + значение; }; constclearInfoPannel = () => { let oldData = nfoPannelElement.querySelectorAll(‘.moex_nfo-pannel__docs-wrapper’); oldData.forEach(old =>old.remove()); } const closeInfoPannel = () => { nfoPannelElement.classLst.add(‘hde’); } const num_word = (значение, слова) => { значение = Math.abs(значение) % 100; вар число = значение % 10; f (значение > 10 && значение < 20) вернуть слова[2]; е (число >1 && число < 5) вернуть слова[1]; f (num == 1) вернуть слова [0]; вернуть слова[2]; } const showInfoPannel = (Pont) =>{ ОчиститьИнфоПаннел() ж (!!понт) { nfoPannelElement.classLst.remove(‘открыто’) nfoPannelShowMoreElement.classLst.remove(‘hde’) nfoPannelShowLessElement.classLst.add(‘hde’) } const sOpened = nfoPannelElement.classLst.contans(‘opened’); const docPubDate = pont?.optons?.pubDate || LastActivePont?.pubDate; const analytcsName = wdgetElement.dataset.analytcsName; let docSummary = docs.flter((doc) => doc.pubDate === docPubDate); const docSummaryLength = docSummary.length; f (docSummary && docSummaryLength > 0) { f (docSummaryLength >2 && !sOpened) { nfoPannelShadeElement.classLst.remove(‘hde’); docSummary = docSummary.slce(0, 2); } еще { docSummaryLength 7 ? { год: ‘число’ } : { месяц: ‘длинный’ }); f (currIntervalId < 6 && docSummary.length >1) { const startPerod = новая дата(docSummary[0].truePubDate).toLocaleDateStrng(‘ru-RU’, { месяц: ‘число’, день: ‘число’ }); const endPerod = новая дата(docSummary[docSummary.length — 1].truePubDate).toLocaleDateStrng(‘ru-RU’, { месяц: ‘число’, день: ‘число’ }); headerDateEl.textContent = `${startPerod} – ${endPerod}` } еще { headerDateEl.textContent = имя месяца.charAt(0).toUpperCase() + имя месяца.slce(1); } const ttleDateEl = nfoPannelContentElement.querySelector(‘.ttle’); ttleDateEl.textContent = `${docSummaryLength} ${num_word(docSummaryLength, [‘material’, ‘material’, ‘materials’])}` docSummary.forEach((d) => { const doc = resCatalog.fnd(tem =>d.Id === tem.Id) const pubDate = новая дата (doc.pubDate) const pannelContentEl = document.createElement(‘dv’); pannelContentEl.className = ‘moex_nfo-pannel__docs-wrapper’; const pannelDateEl = document.createElement(‘span’); pannelDateEl.className = ‘дата’; pannelDateEl.textContent = pubDate.toLocaleDateStrng(‘ru-RU’, { месяц: ‘число’, день: ‘число’ }); const pannelTextEl = document.createElement(‘span’); PanelTextEl.className = ‘текст’; pannelTextEl.textContent = doc.summary; const pannelMoreEl = document.createElement(‘a’); pannelMoreEl.className = ‘больше’; pannelMoreEl.textContent = ‘Еще’; pannelMoreEl.setAttrbute(‘href’, `/doc/${doc.docId}?from=chronograph_${analytcsName}`); pannelContentEl.append(pannelDateEl); pannelContentEl.append(pannelTextEl); pannelContentEl.append(pannelMoreEl); nfoPannelContentElement.append(pannelContentEl); }) nfoPannelElement.classLst.remove(‘hde’); } } const fetchIndcesData = async() =>{ попробуй { const ответ = awat fetch(‘/ndces/graphcatalog’); е (!response.ok) { throw new Error(`Status ${response.status}`); } категории = awat response.json(); } поймать (ошибка) { показатьErrorMsg(); throw new Error(`Ошибка получения индексных данных: ${error.message}`); } }; const fetchCatalogData = async () =>{ попробуй { //получим данные каталога материалов const CatalogId = wdgetElement.dataset.docsAp; const response = awat fetch(`https://wt.kommersant.ru/ap/v1/catalog/get?catalogId=${catalogId}&start=0&lmt=1000`); е (!response.ok) { throw new Error(`Status ${response.status}`); } resCatalog = (awat response.json())?.data || []; resCatalog.sort((docA, docB) => новая дата(docA.pubDate).getTme() — новая дата(docB.pubDate).getTme()) } поймать (ошибка) { показатьErrorMsg(); throw new Error(`Ошибка получения данных: ${error.message}`); } }; const fetchGraphData = async() =>{ попробуй { //получаем данные диаграммы constgraphId = wdgetElement.dataset.graphAp const cost = awat fetch(`/ndces/graphvalues?ndex=${graphId}&nterval=${currIntervalId}`) е (!cost.ok) { throw new Error(‘Я не могу загрузить данные для диаграммы’); } graphDataGold = awat Cost.json(); } поймать (ошибка) { показатьErrorMsg(); throw new Error(`Ошибка получения данных диаграммы: ${error.message}`); } }; const formatStrng = (значение) => { возвращаемое значение.toStrng().replace(‘.’, ‘,’); //просмотр 1.23 }; const formatNumber = (значение) => { return Math.trunc(+value * 100)/100; //просмотр 1.23 }; const getMnY = () => { const maxY =chartDataGold.reduce((max, current) =>{ return Math.max(макс, ток[1]); }, 0); const mnY =chartDataGold.reduce((mn, current) => { return Math.mn(mn, current[1]); }, МаксY); const newMn = mnY — Math.trunc((maxY — mnY)/3) вернуть newMn > 0 ? newMn : 0; } const formatDateTmeDoc = (dateValue) =>{ const currDateObject = новая дата (dateValue); const dayOfMonth = currDateObject.getDate().toStrng().padStart(2, ‘0’); константный месяц = ​​currDateObject.getMonth() + 1; const год = currDateObject.getFullYear(); переключатель (currIntervalId) { //день — 6 месяцев случай 1: случай 2: случай 3: случай 4: случай 5: return `${dayOfMonth} ${monthNames[month].full} ${year}`; //1 год, с начала года случай 6: случай 7: return `${monthNames[month].full} ${year}`; //3 года — постоянно случай 8: случай 9: случай 10: вернуть `${year}`; } }; const formatDateTme = (dateValue, pos) =>{ const currDateObject = новая дата (dateValue); const dayOfMonth = currDateObject.getDate().toStrng().padStart(2, ‘0’); константный месяц = ​​currDateObject.getMonth() + 1; const год = currDateObject.getFullYear(); constyearShort = год.toStrng().substrng(2); const tme = currDateObject.toLocaleStrng(‘ru-RU’, { час: ‘2-дгт’, минута: ‘2-dgt’ }); переключатель (currIntervalId) { //день случай 1: return [`${tme}`, `${dayOfMonth} ${monthNames[month].short} ${tme}`]; //неделя случай 2: return [`${dayOfMonth} ${monthNames[month].short} ${tme}`, `${dayOfMonth} ${monthNames[month].short} ${tme}`]; //месяц, 3 месяца случай 3: случай 4: return [`${dayOfMonth} ${monthNames[month].short}`, `${dayOfMonth} ${monthNames[month].short}`]; //6 месяцев случай 5: return [`${monthNames[month].full}`, `${dayOfMonth} ${monthNames[month].short} ${year}`]; //1 год, с начала года случай 6: случай 7: f (pos !== undefned &&chartDataGold[pos]) { const currentYear = (новая дата(chartDataGold[pos][0])).getFullYear(); const prevYear = позиция >0 ? (новая дата(chartDataGold[pos — 1][0])).getFullYear() : 0; f (pos === 0 || currentYear !== prevYear) { return [`${monthNames[month].short}’${yearShort}`, `${dayOfMonth} ${monthNames[month].short} ${year}`]; } } return [`${monthNames[month].short}`, `${dayOfMonth} ${monthNames[month].short} ${year}`]; //3 года, 5 лет случай 8: случай 9: return [`${year}`, `${monthNames[month].full} ${year}`]; //все время случай 10: return [`’${yearShort}`, `${monthNames[month].full} ${year}`]; } }; const connectGraphData = async () => { awat fetchGraphData(); диаграммаDataGold = []; graphDataGold.forEach(([дата, значение]) =>chartDataGold.push([новая дата(дата).getTme(), parseFloat(значение)])); const mnTme =chartDataGold[0][0] const maxTme =chartDataGold[chartDataGold.length — 1][0] ChartDataDocs = []; документы = [] пусть startOfTheCustomPerod = null; пусть endOfTheCustomPerod = null; const customPerodLength = 1000 * 60 * 60 * 24 * 7; //неделя resCatalog.forEach((запись) =>{ пусть docTrueDate = новая дата(record.pubDate).getTme() пусть docDate = новая дата (record.pubDate) docDate.setHours(0, 0, 0, 0) f (docTrueDate < mnTme || docTrueDate >maxTme || !record.IsShow) возвращение f (currIntervalId < 6) { е ( !!startOfTheCustomPerod && !!endOfTheCustomPerod && документTrueDate >startOfTheCustomPerod && docTrueDate < endOfTheCustomPerod) { docDate = новая дата (startOfTheCustomPerod) } еще { startOfTheCustomPerod = docDate.getTme() endOfTheCustomPerod = startOfTheCustomPerod + customPerodLength } } else f (currIntervalId === 6 || currIntervalId === 7) { docDate.setDate(1) } else f (currIntervalId > 7) { docDate.setMonth(1, 1) } docs.push({ …запись truePubDate: новая дата(record.pubDate).getTme(), pubDate: docDate.getTme() }) const ужеExsstsId =chartDataDocs.fndIndex(d =>d.pubDate === docDate.getTme()) е (ужеExsstsId === -1) { chartDataDocs.push({ х: docTrueDate, pubDate: docDate.getTme(), shape: ‘url(https://m2.kommersant.ru/ContentFlex/mages/logos/flag-desk-logo.svg)’, }); } еще { chartDataDocs[alreadyExsstsId].shape = ‘url(https://m2.kommersant.ru/ContentFlex/mages/logos/flags-desk-logo.svg)’ chartDataDocs[alreadyExsstsId].x = Math.mn(docTrueDate,chartDataDocs[alreadyExsstsId].x) } }); тире = [] chartDataDocs.forEach((doc) =>{ тире.push({ цвет: ‘#DDD’, ширина: 1, значение: doc.x, zИндекс: 2, DashStyle: ‘Тире’, }) }) }; const renderGraph = () =>{ диаграмма = Hghcharts.chart(`moex_graph-${tmestamp}`, { диаграмма: { стиль: { FontFamly: ‘Нерт’, }, события: { нагрузка: функция() { spnnerElement.remove(); tabsElement.classLst.remove(‘hde’); }, } }, немного: { текст: незащищенный }, кредиты: { включено: ложь }, легенда: { включено: ложь }, инструментp: { включено: ложь, кроссхарс: правда, поделился: правда }, цвета: [‘#498ABB’, ‘#F17E9B’], хАкс: { введите: ‘dateme’, сюжетные линии: тире, }, yAxs: { немного: { текст: неопределенный, }, ярлыки: { выравнивание: ‘слева’, х: 0, резервное пространство: правда, стиль: { Размер шрифта: ’14px’, шрифтВес: ‘400’, цвет: ‘#333’, textOverflow: не определено, }, }, grdLneColor: ‘#eee’, }, сюжетОптонс: { серия: { маркер: { включено: ложь, EnableThreshold: неопределенный, fllColor: ‘#3E9AE2’, lneColor: ‘#3E9AE2’, длина: 1, радиус: 3, }, пон: { события: { mouseOver: functon() { updateChartRate([ths.key, ths.y], ths.ndex); }, }, }, события: { mouseOut: functon() { updateChartRate(); }, }, говорится: { актуально: { непрозрачность: 1 } }, }, флаги: { разрешитьПонтселект: правда, события: { clck: функция (событие) { chart.seres[1].ponts.forEach((pont, dx) =>{ const sAGroup = pont.shape.ncludes(«флаги») const mage = `url(https://m2.kommersant.ru/ContentFlex/mages/logos/flag${sAGroup ? ‘s’ : »}-desk-logo.svg)` pont.optons.shape = маг; pont.shape = маг; понт.обновление() }) const SAPontGroup = event.pont.shape.ncludes(«флаги») const pontImage = `url(https://m2.kommersant.ru/ContentFlex/mages/logos/flag${sAPontGroup ? ‘s’ : »}-desk-logo-actve.svg)` event.pont.optons.shape = pontImage; event.pont.shape = pontImage; событие.понт.обновление() LastActivePont = event.pont showInfoPannel(event.pont) sendChronographEvent(‘nfo_pannel’, ‘показать’) }, }, } }, ответ: { правила: [{ кондтон: { МаксШдс: 600 }, диаграммаОптонс: { хАкс: { ярлыки: { стиль: { Размер шрифта: ’10px’, }, }, }, yAxs: { ярлыки: { стиль: { Размер шрифта: ’10px’, }, }, } } }] }, серия: [{ тип: ‘lne’, данные: диаграммаDataGold, }, { тип: ‘флаги’, ттл: », данные: диаграммаDataDocs, }, ], }); LastActivePont =chart.seres[1].ponts[chartDataDocs.length — 1] showInfoPannel (lastActvePont) chart.seres[1].ponts[chartDataDocs.length — 1].select(true, true) const sAGroup = LastActvePont.shape.ncludes(«флаги») const mage = `url(https://m2.kommersant.ru/ContentFlex/mages/logos/flag${sAGroup ? ‘s’ : »}-desk-logo-actve.svg)` LastActivePont.optons.shape = маг; LastActivePont.shape = маг; последнийActivePont.update() }; const updateGraph = async () =>{ awat ConnectGraphData(); requestAnmatonFrame(() => { диаграмма.уничтожить(); рендерГраф(); updateChartRate(); }); }; const ntHghcharts = async () =>{ попробуй { awat loadScrpt(‘https://m2.kommersant.ru/ContentFlex/js/custom/lbs/hghchats/hghstock-v12.4.0.js’); } поймать (ошибка) { показатьErrorMsg(); console.log(ошибка) throw new Error(‘Ошибка загрузки hghcharts.js’); } }; const ntGraph = async () => { awat ntHghcharts(); awat ConnectGraphData(); обновлениеTabSelect(); Hghcharts.setOptons({ язык: { numercSymbols: [‘тысяча’] } }); requestAnmatonFrame(() =>{ рендерГраф(); updateChartRate(); }); }; const updateAttrbute = () => { constgraphElement = wdgetElement.querySelector(‘.moex_graph’); graphElement.setAttrbute(‘d’, `moex_graph-${tmestamp}`); selectElement.setAttrbute(‘d’, `moex_nterval-${tmestamp}`); }; const sendChronographEvent = (событие, полезная нагрузка) =>{ console.log(‘- 1’) е (!!wndow.kommersant) { const analytcsName = wdgetElement.dataset.analytcsName; console.log(‘- 2’) console.log(имяаналитики, событие, полезная нагрузка) wndow.kommersant.sendEvent(‘хронограф’, analytcsName, событие, полезная нагрузка); } } const ntWdget = асинхронный () =>{ обновлениеАттрбуте(); awat fetchIndcesData(); awat fetchCatalogData(); нтКатегория(); нтГраф(); sendChronographEvent(‘nt’) selectElement.addEventLstener(‘change’, (e) => { updateInterval(e.target.value); обновлениеГрафик(); sendChronographEvent(‘update_interval’, e.target.value) }); noteIconElement.addEventLstener(‘clck’, (e) =>{ noteElement.classLst.contans(‘hde’) ? шоуПримечание(): закрытьПримечание() }); noteCloseElement.addEventLstener(‘clck’, (e) => { закрытьПримечание() }); nfoPannelShowMoreElement.addEventLstener(‘clck’, (e) =>{ nfoPannelElement.classLst.add(‘открыто’) nfoPannelShowMoreElement.classLst.add(‘hde’) nfoPannelShowLessElement.classLst.remove(‘hde’) шоуИнфоПаннел() sendChronographEvent(‘nfo_pannel’, ‘подробнее’) }); nfoPannelShowLessElement.addEventLstener(‘clck’, (e) =>{ nfoPannelElement.classLst.remove(‘открыто’) nfoPannelShowMoreElement.classLst.remove(‘hde’) nfoPannelShowLessElement.classLst.add(‘hde’) tabsElement.scrollIntoVew({ поведение: «гладкое», блок: ‘старт’ }); шоуИнфоПаннел() }); }; нтВджет(); })();})()Аномально высокая активность в августе может быть обусловлена ​​сочетанием нескольких причин. Виталий Наумов, старший стратег по рынкам облигаций, ставок и валют аналитической компании Euler, считает, что важным фактором роста активности стали предложения по квазивалютным облигациям крупных эмитентов. Крупными держателями таких ценных бумаг традиционно являются банки, которые обязаны регулировать собственную открытую валютную позицию. «И если они выдвигают на предложение квазивалютную (которая считается валютным активом) бумагу, значит, им нужен какой-то альтернативный валютный актив», — отмечает г-н Наумов. По данным сайта раскрытия информации, 21 августа ГМК «Норильский никель» объявила о выкупе 95,5% выпуска, объем которого составил $500 млн. «Роснефть» с 28 августа по 1 сентября принимала заявки на обратный выкуп по оферте выпуска на сумму 15 млрд юаней. Результаты будут объявлены 4 сентября, однако участники рынка признают, что ситуация полугодовой давности может повториться. В марте нефтяная компания провела оферту на еще один выпуск на 15 млрд юаней, к погашению было предложено 95% выпуска. В этом месяце также наблюдался дефицит юаня, что привело к росту ставок китайской валюты, росту ее курса и объемов биржевых торгов (см. «Ъ» от 20 марта).

В течение отчетного периода наблюдался сильный рост курса юаня; по итогам месяца его среднее значение выросло на 7,8%, до 12,4 руб./юань. И этот рост курса также привлек внимание спекулянтов, что способствовало увеличению объемов торгов. По словам Никиты Силкина, руководителя отдела онлайн-брокера БКС Мир Инвестиций, в прошлом месяце количество клиентов-физлиц, совершивших операции с юанем, выросло на 35% по сравнению с июлем. «Заметное движение цен всегда сопровождается ростом спекулятивной активности», — отмечает он. Кроме того, по словам главного аналитика Совкомбанка Михаила Васильева, увеличились объемы импорта, в том числе топлива, оборудования для ремонта НПЗ и другой инфраструктуры. В сентябре, несмотря на рост деловой активности, объемы торгов юанем снизятся, считают аналитики. Как отмечает Виталий Наумов, этому будет способствовать сокращение объема предложений по квазивалютным облигациям, который оценивается максимум в $1,2 млрд. Кроме того, Минфин сокращает покупку иностранной валюты в рамках бюджетного правила — с 5,9 млрд до 1,9 млрд руб. в день. В то же время ожидается увеличение предложения иностранной валюты экспортерами на фоне роста цен на нефть. По словам Владимира Евстифеева, в сентябре-октябре объем продаж экспортной выручки увеличится до $3,5–4 млрд в месяц. «Учитывая ожидаемую сезонную активизацию импортных операций, а также предположение, что бюджетное правило существенно стерилизует приток иностранной валюты в страну, курс доллара сохранится в диапазоне 85-90 руб./$», — оценивает эксперт.

Оставить комментарий

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Стоит Посмотреть


Стоит Посмотреть

Новости По Дате

Сентябрь 2026
Пн Вт Ср Чт Пт Сб Вс
 123456
78910111213
14151617181920
21222324252627
282930  

Вам может быть интересно:

Общество

Сотрудницу салона красоты арестовали за драку с полицией Сотрудница салона красоты на юго-западе Москвы арестована за нападение на полицейских. Инциденту предшествовал визит в парикмахерскую...

Политика

Склады, терминалы и бизнес-центры: список целей на Украине растет Российские войска продолжают беспрецедентную по своей интенсивности воздушную кампанию против Киева и объектов военной инфраструктуры...

Авто

Корпорация Stellantis представила грузовик Ram Chassis Cab 2027 модельного года с пакетом Night Edition, делающим его брутальную внешность ещё более эффектной. Ram Chassis Cab...

Технологии

Первые насекомые были полуводными амфибиями с лопастями и брюшком как у краба То, что считалось обычным ювенильным ракообразным из каменноугольного периода, внезапно превратилось в...