;(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

IPI menor para carros novos derruba preço e vendas de usados, diz setor

Camila Maciel

Da Agência Brasil, em São Paulo

09/08/2012 11h50

A redução do Imposto sobre Produtos Industrializados (IPI) para carros novos provocou queda no preço dos veículos usados e retração no mercado. De acordo com a Federação Nacional das Associações dos Revendedores de Veículos Automotores (Fenauto), o preço dos carros usados tem como referência o valor do veículo novo.

Com o IPI menor para os novos, houve uma desvalorização de 10% a 15% no preço dos usados, conforme a entidade. “Em maio, os estoques estavam lotados de carros comprados por um preço superior. Isso prejudicou os comerciantes, pois tiveram que vender por um valor mais baixo”, explica Ilídio Gonçalves dos Santos, presidente da Fenauto.

Redução nas vendas

Cerca de 4,5 mil lojas de seminovos fecharam as portas em todo o país entre março e julho, segundo a Fenauto. De janeiro a maio, a redução nas vendas de usados em São Paulo chegou a 12,1%, na comparação com o mesmo período do ano ado. “Ainda vamos fazer o levantamento de maio a agosto, mas certamente a situação se agravou”, estima Santos.

Além do imposto menor, os revendedores avaliam que a restrição de crédito, provocada pela inadimplência, também contribuiu para a queda nas vendas. “De cada dez fichas para financiamento, cerca de sete são negadas. A exigência dos bancos aumentou”, argumenta.

Abílio Tastaldi, dono de uma loja de usados na zona oeste de São Paulo, conta que quem pretendia vender o carro usado para trocar por um zero, para aproveitar a redução do IPI, acabou ficando decepcionado. “As pessoas não queriam aceitar que o valor do carro tinha caído. Isso prejudicou as trocas. Se um carro valia R$ 18 mil, amos a oferecer de R$ 14 mil a R$ 15 mil”, conta.

Situação para o consumidor

Para o consumidor que deseja comprar um carro usado, a situação é mais vantajosa, na opinião do comerciante Marlon Eden, que procura um seminovo há cerca de um mês. “Percebo que o mercado está parado e desesperado para se livrar do estoque. No caso de um carro zero, é muito grande [queda do valor de revenda]. Em compensação, o preço que eu pagar agora no usado, não deve desvalorizar muito depois.”

André Amorim, gerente de uma revenda de multimarcas de usados, aposta em uma recuperação dos preços com o fim da redução do IPI, previsto para o final deste mês. “Já estamos sentindo uma retomada das vendas nos últimos 15, 20 dias. Voltou a demanda, mas os preços ainda estão baixos”, explica.

Para o presidente da Fenauto, ainda não é possível prever os rumos do mercado de usados nos próximos meses. A federação apresentou ao Ministério da Fazenda propostas para impulsionar o setor de seminovos, como a retirada do Imposto sobre Operações de Crédito (IOF) por seis meses e linhas de financiamento para capital de giro.