;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

Bolsa cai e perde 1,9% no mês; dólar tem alta mensal de 2,6%, a R$ 3,753

Do UOL, em São Paulo

28/02/2019 17h29Atualizada em 28/02/2019 18h35

O Ibovespa, principal índice da Bolsa brasileira, emendou a segunda queda e fechou em baixa de 1,77%, a 95.584,35 pontos. É a maior queda percentual diária em quase um mês, desde 6 de fevereiro (-3,74%). Assim, a Bolsa encerra o mês com perda acumulada de 1,86%.

dólar comercial fechou em alta de 0,61%, cotado a R$ 3,753 na venda. Com isso, a moeda acumulou valorização de 2,58% em fevereiro, após cair 5,6% em janeiro.

O valor do dólar divulgado diariamente pela imprensa, inclusive o UOL, se refere ao dólar comercial. Para turistas, o valor sempre é maior.

Petrobras cai 2,6%

Entre os destaques da Bolsa, as ações da Petrobras caíram 2,64%, após a empresa registrar seu primeiro lucro anual desde 2013. Apesar disso, a companhia informou que vai pagar dividendos mínimos aos acionistas até que julgue ter saúde financeira suficiente para remunerar mais os investidores.

Os papéis da Ambev despencaram 6,15%, entre as maiores perdas do dia. A empresa teve lucro líquido de R$ 3,46 bilhões no quarto trimestre do ano ado, mas sinalizou crescimento de custos em 2019.

Também fecharam em queda as ações do Bradesco (-2,63%), do Banco do Brasil (-2,5%) e do Itaú Unibanco (-1,89%). Por outro lado, a Vale (+0,58%) terminou o dia em alta. Essas empresas têm grande peso sobre o Ibovespa.

Reforma da Previdência

O mercado também estava de olho nas negociações da reforma da Previdência. Em encontro com jornalistas hoje, o presidente Jair Bolsonaro itiu a possibilidade de negociar pontos da proposta, entre eles a redução da idade mínima para aposentadoria das mulheres de 62 para 60 anos.

Além disso, Bolsonaro disse que pode fazer concessões no BPC (Benefício de Prestação Continuada), que é pago para idosos de baixa renda, e na porcentagem da pensão por morte, que poderia ar de 60% para 70%.

Após a declaração de Bolsonaro, o dólar se firmou em alta e a Bolsa ou a cair com mais força. "Não precisava ter feito esse comentário. Ninguém estava pressionando neste ponto da idade mínima. Adiciona ruído em um momento já de maior cautela", afirmou um gestor no Rio de Janeiro à agência de notícias Reuters, sob a condição de anonimato.

Diante de um cenário já mais cauteloso com sinais de tramitação complicada do texto apresentado na semana ada, a sinalização endossou preocupações sobre uma 'desidratação' da proposta original, que prevê economia de R$ 1 trilhão em dez anos.

PIB do Brasil e dos EUA

Investidores analisavam a divulgação dos PIBs (Produto Interno Bruto, a soma de tudo o que produzido no país) brasileiro e norte-americano em 2018.

A economia brasileira cresceu 1,1% em 2018 em relação a 2017, mas desacelerou no quarto trimestre, o que frustrou o mercado. Nos Estados Unidos, a economia desacelerou menos que o esperado no último trimestre do ano ado em meio a gastos sólidos de consumidores e empresas.

(Com Reuters)

Entenda como funciona o câmbio do dólar

UOL Notícias