Plano de Viagem | Copa do Mundo 2026

A carteira de investimentos a seguir tem como objetivo obter recursos suficientes para uma viagem de 20 dias em 2026. A Copa do Mundo 2026 vai acontecer em um formato diferente e terá sede no México, Estados Unidos e Canadá.

Saiba mais sobre a Copa do Mundo 2026

Assim como o formato da Copa, a viagem tem como objetivo seguir os jogos da seleção brasileira até a final. O torneio acontecerá entre junho e julho, dos dias 08/06 até 03/07.

Com objetivo de acompanhar os jogos mais importantes da competição, a chegada no México será no dia 14 de junho, com estadia até dia 20 de junho. A partir do dia 20, a viagem seria pelo Canadá com estadia até o dia 27. Logo, do dia 28 de junho ao dia 5 de julho a viagem seria no local final da Copa, nos Estados Unidos.

Por ser uma viagem longa, os recursos precisam ser suficientes para:

  • Ingressos das competições
  • Ingressos de museus/ parques
  • Hospedagem em hotel
  • Passagens aéreas entre os trechos
  • Alimentação
  • Compras
  • Eventuais emergências

Para isso, é preciso construir uma carteira de investimentos que possibilite a maximização do recurso aplicado de acordo com o prazo. Felizmente, o tesouro nacional possibilita uma vasta lista de títulos para compra e com isso podemos montar uma carteira diversificada e condizente com o objetivo final.

No contexto para esse planejamento, temos uma expectativa de alta na taxa de juros até 2025.

Títulos do Tesouro Nacional

  • Visão macro de todos os títulos disponíveis
Tesouro Prefixado - Letra do Tesouro Nacional (LTN)
Taxa de juros prefixada, ou seja, você sabe o quanto resgatará desde o momento da aplicação.
É ideal para investimentos de médio e longo prazo.
Para obter a rentabilidade contratada é necessário esperar o vencimento do título.
Tesouro Prefixado com Juros Semestrais - Letra do Tesouro Nacional (LTN)
Taxa de juros prefixada, ou seja, você sabe o quanto resgatará desde o momento da aplicação.
Nesse tipo de título, você recebe os juros a cada seis meses.
Tesouro Selic - Letra Financeira do Tesouro (LFT)
O tesouro Selic acompanha a taxa de juros básica da economia, a taxa Selic. Isso significa que a rentabilidade dele é pós fixada.
É possível resgatar o título antes do prazo de vencimento, sem prejuízos.
Por ser um título com flutuação de rentabilidade, é ideal para reservas de emergências.
Tesouro IPCA+ (NTN-B)
Esse título tem a rentabilidade dele atrelada a taxa de inflação oficial do país, o índice IPCA. Além disso, ele acrescenta uma taxa de juros prefixada.
É interessante para aqueles que desejam manter seu poder de compra, visto que ele sempre será maior que a inflação.
O mais indicado é esperar o vencimento do título, para não correr o risco de perder a rentabilidade.
Tesouro IPCA+ com juros semestrais (NTN-B Principal)
Possui as mesmas características do tesouro IPCA+ porém com o pagamento de juros a cada seis meses.

Títulos escolhidos

library(GetTDData)
library(dplyr)
if(!require(ggplot2)) {install.packages("gplot2")}
require(ggplot2)
if(!require(plotly)) {install.packages("plotly")}
require(plotly)
## asset.codes é um campo importante. Você deve mudar este código para analisar títulos diferentes. Aqui o ativo em questão é a a LFT
asset.codes <- 'LFT'   # Identifier of assets 
cache_folder <- paste0(tempdir(), '/TD_cache')

my.flag <- download.TD.data(asset.codes = asset.codes, 
                            dl.folder = cache_folder)
my.df <- read.TD.files(dl.folder = cache_folder)
my.df$matur.date == as.Date(my.df$matur.date)
# Nome das variáveis do data.frame my.df
names(my.df)
## [1] "ref.date"   "yield.bid"  "price.bid"  "asset.code" "matur.date"
# Observando as primeiras observações
head(my.df)
##     ref.date yield.bid price.bid asset.code matur.date
## 1 2005-01-03     0e+00   2164.20 LFT 160205 2005-02-16
## 2 2005-01-04     0e+00   2165.60 LFT 160205 2005-02-16
## 3 2005-01-05     1e-04   2166.98 LFT 160205 2005-02-16
## 4 2005-01-06     1e-04   2168.39 LFT 160205 2005-02-16
## 5 2005-01-07     1e-04   2169.79 LFT 160205 2005-02-16
## 6 2005-01-10     1e-04   2171.20 LFT 160205 2005-02-16
# Observando as últimos observações
tail(my.df)
##         ref.date yield.bid price.bid asset.code matur.date
## 16509 2022-07-20  0.001667  11836.08 LFT 010327 2027-03-01
## 16510 2022-07-21  0.001670  11841.80 LFT 010327 2027-03-01
## 16511 2022-07-22  0.001674  11847.48 LFT 010327 2027-03-01
## 16512 2022-07-25  0.001670  11853.57 LFT 010327 2027-03-01
## 16513 2022-07-26  0.001676  11859.15 LFT 010327 2027-03-01
## 16514 2022-07-27  0.001675  11865.10 LFT 010327 2027-03-01
# Entendendo a estrutura dos dados
str(my.df)
## 'data.frame':    16514 obs. of  5 variables:
##  $ ref.date  : Date, format: "2005-01-03" "2005-01-04" ...
##  $ yield.bid : num  0e+00 0e+00 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 ...
##  $ price.bid : num  2164 2166 2167 2168 2170 ...
##  $ asset.code: chr  "LFT 160205" "LFT 160205" "LFT 160205" "LFT 160205" ...
##  $ matur.date: Date, format: "2005-02-16" "2005-02-16" ...
# Verificando o número de colunas
length(my.df)
## [1] 5
# Verificando o número de linhas
nrow(my.df)
## [1] 16514
# Entendendo a distribuição das datas de maturidade
table(my.df$matur.date)
## 
## 2005-02-16 2006-01-18 2007-01-17 2008-06-18 2009-03-18 2010-03-17 2011-03-16 
##         30        263        510        862       1053       1084       1190 
## 2012-03-07 2013-03-07 2013-03-08 2014-03-07 2015-03-07 2017-03-07 2021-03-01 
##       1335       1412         14       1527       1252       1543       1484 
## 2023-03-01 2024-09-01 2025-03-01 2027-03-01 
##       1356        366        867        366
# Entendendo a estrutura dos dados
table(my.df$asset.code)
## 
## LFT 010321 LFT 010323 LFT 010325 LFT 010327 LFT 010924 LFT 070312 LFT 070313 
##       1484       1356        867        366        366       1335       1412 
## LFT 070314 LFT 070315 LFT 070317 LFT 080313 LFT 160205 LFT 160311 LFT 170107 
##       1527       1252       1543         14         30       1190        510 
## LFT 170310 LFT 180106 LFT 180309 LFT 180608 
##       1084        263       1053        862

Tesouro Selic (LFT) com vencimento em 01/03/2025

O investimento nesse título é ideal pois com um investimento nesse curto prazo, seria possível resgatar o montante final com objetivo de começar o planejamento da viagem com a rentabilidade diária vinculada à taxa de juros da economia (taxa Selic). Como temos um cenário de aumento da taxa de juros, ele seria cada vez mais rentável.

## A data de maturidade, matur.date, é um parâmetro que você deve modificar. Escolha diferentes datas, este parâmetro está no formato "aaaa-mm-dd"
LFT <- my.df %>%
  filter(matur.date == as.Date("2025-03-01") )

p <- ggplot(data = LFT, 
            aes(x = as.Date(ref.date), 
                y = price.bid, 
                color = asset.code)) + 
  geom_line(size = 1) + scale_x_date() + labs(title = '', x = 'Dates')

print(p)

Tesouro Selic (LFT) com vencimento em 01/09/2024

Esse investimento teria o mesmo objetivo do tesouro Selic 2025, porém esse serviria para o planejamento a longo prazo da viagem (2 anos antes). Isso significa o gasto com passaporte e visto.

## A data de maturidade, matur.date, é um parâmetro que você deve modificar. Escolha diferentes datas, este parâmetro está no formato "aaaa-mm-dd"
LFT <- my.df %>%
  filter(matur.date == as.Date("2024-09-01") )

p <- ggplot(data = LFT, 
            aes(x = as.Date(ref.date), 
                y = price.bid, 
                color = asset.code)) + 
  geom_line(size = 1) + scale_x_date() + labs(title = '', x = 'Dates')

print(p)

Tesouro IPCA+ (NTN-B) com vencimento em 15/08/2026

Com o objetivo de proteger da inflação e juntar o dinheiro necessário para os gastos feitos durante a viagem, o investimento no NTN-B seria ideal. O pagamento semestral de juros seria uma forma de ter sempre recursos suficientes para o planejamento com antecedência.

## asset.codes é um campo importante. Você deve mudar este código para analisar títulos diferentes. Aqui o ativo em questão é a a NTNB
asset.codes <- 'NTN-B'   # Identifier of assets 
cache_folder <- paste0(tempdir(), '/TD_cache')

my.flag <- download.TD.data(asset.codes = asset.codes, 
                            dl.folder = cache_folder)
my.df <- read.TD.files(dl.folder = cache_folder)
my.df$matur.date == as.Date(my.df$matur.date)
# Nome das variáveis do data.frame my.df
names(my.df)
## [1] "ref.date"   "yield.bid"  "price.bid"  "asset.code" "matur.date"
# Observando as primeiras observações
head(my.df)
##     ref.date yield.bid price.bid asset.code matur.date
## 1 2005-01-03     0e+00   2164.20 LFT 160205 2005-02-16
## 2 2005-01-04     0e+00   2165.60 LFT 160205 2005-02-16
## 3 2005-01-05     1e-04   2166.98 LFT 160205 2005-02-16
## 4 2005-01-06     1e-04   2168.39 LFT 160205 2005-02-16
## 5 2005-01-07     1e-04   2169.79 LFT 160205 2005-02-16
## 6 2005-01-10     1e-04   2171.20 LFT 160205 2005-02-16
# Observando as últimos observações
tail(my.df)
##         ref.date yield.bid price.bid   asset.code matur.date
## 51136 2022-07-20    0.0632   3874.46 NTN-B 150555 2055-05-15
## 51137 2022-07-21    0.0626   3906.08 NTN-B 150555 2055-05-15
## 51138 2022-07-22    0.0620   3936.50 NTN-B 150555 2055-05-15
## 51139 2022-07-25    0.0618   3947.35 NTN-B 150555 2055-05-15
## 51140 2022-07-26    0.0622   3926.11 NTN-B 150555 2055-05-15
## 51141 2022-07-27    0.0631   3878.36 NTN-B 150555 2055-05-15
# Entendendo a estrutura dos dados
str(my.df)
## 'data.frame':    51133 obs. of  5 variables:
##  $ ref.date  : Date, format: "2005-01-03" "2005-01-04" ...
##  $ yield.bid : num  0e+00 0e+00 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 ...
##  $ price.bid : num  2164 2166 2167 2168 2170 ...
##  $ asset.code: chr  "LFT 160205" "LFT 160205" "LFT 160205" "LFT 160205" ...
##  $ matur.date: Date, format: "2005-02-16" "2005-02-16" ...
# Verificando o número de colunas
length(my.df)
## [1] 5
# Verificando o número de linhas
nrow(my.df)
## [1] 51133
# Entendendo a distribuição das datas de maturidade
table(my.df$matur.date)
## 
## 2005-02-16 2006-01-18 2006-08-15 2007-01-17 2007-05-15 2008-06-18 2008-08-15 
##         30        263        405        510        465        862        719 
## 2009-03-18 2009-05-15 2010-03-17 2010-08-15 2011-03-16 2011-05-15 2012-03-07 
##       1053       1091       1084       1143       1190       1290       1335 
## 2012-08-15 2013-03-07 2013-03-08 2013-05-15 2014-03-07 2015-03-07 2015-05-15 
##       1312       1412         14       1321       1527       1252       2592 
## 2017-03-07 2017-05-15 2020-08-15 2021-03-01 2023-03-01 2024-08-15 2024-09-01 
##       1543       2497       2860       1484       1356       4385        366 
## 2025-03-01 2026-08-15 2027-03-01 2030-08-15 2032-08-15 2035-05-15 2040-08-15 
##        867       1616        366        612        108       4064        612 
## 2045-05-15 2050-08-15 2055-05-15 
##       4385       2530        612
# Entendendo a estrutura dos dados
table(my.df$asset.code)
## 
##   LFT 010321   LFT 010323   LFT 010325   LFT 010327   LFT 010924   LFT 070312 
##         1484         1356          867          366          366         1335 
##   LFT 070313   LFT 070314   LFT 070315   LFT 070317   LFT 080313   LFT 160205 
##         1412         1527         1252         1543           14           30 
##   LFT 160311   LFT 170107   LFT 170310   LFT 180106   LFT 180309   LFT 180608 
##         1190          510         1084          263         1053          862 
## NTN-B 150507 NTN-B 150509 NTN-B 150511 NTN-B 150513 NTN-B 150515 NTN-B 150517 
##          465         1091         1290         1321         2592         2497 
## NTN-B 150535 NTN-B 150545 NTN-B 150555 NTN-B 150806 NTN-B 150808 NTN-B 150810 
##         4064         4385          612          405          719         1143 
## NTN-B 150812 NTN-B 150820 NTN-B 150824 NTN-B 150826 NTN-B 150830 NTN-B 150832 
##         1312         2860         4385         1616          612          108 
## NTN-B 150840 NTN-B 150850 
##          612         2530
## A data de maturidade, matur.date, é um parâmetro que você deve modificar. Escolha diferentes datas, este parâmetro está no formato "aaaa-mm-dd"
NTNB <- my.df %>%
  filter(matur.date == as.Date("2026-08-15") )

p <- ggplot(data = NTNB, 
            aes(x = as.Date(ref.date), 
                y = price.bid, 
                color = asset.code)) + 
  geom_line(size = 1) + scale_x_date() + labs(title = '', x = 'Dates')

print(p)

Tesouro IPCA+ (NTN-B principal) com vencimento em 01/03/2025

O objetivo de receber o NTN-B principal é justamente arcar com os maiores custos da viagem, como hospedagem e passagens aéreas. Isto é, como são tópicos que necessitam de grande antecedência, o investimento seria ideal para melhor organização da viagem.

## asset.codes é um campo importante. Você deve mudar este código para analisar títulos diferentes. Aqui o ativo em questão é a a NTNB
asset.codes <- 'NTN-B Principal'   # Identifier of assets 
cache_folder <- paste0(tempdir(), '/TD_cache')

my.flag <- download.TD.data(asset.codes = asset.codes, 
                            dl.folder = cache_folder)
my.df <- read.TD.files(dl.folder = cache_folder)
my.df$matur.date == as.Date(my.df$matur.date)
# Nome das variáveis do data.frame my.df
names(my.df)
## [1] "ref.date"   "yield.bid"  "price.bid"  "asset.code" "matur.date"
# Observando as primeiras observações
head(my.df)
##     ref.date yield.bid price.bid asset.code matur.date
## 1 2005-01-03     0e+00   2164.20 LFT 160205 2005-02-16
## 2 2005-01-04     0e+00   2165.60 LFT 160205 2005-02-16
## 3 2005-01-05     1e-04   2166.98 LFT 160205 2005-02-16
## 4 2005-01-06     1e-04   2168.39 LFT 160205 2005-02-16
## 5 2005-01-07     1e-04   2169.79 LFT 160205 2005-02-16
## 6 2005-01-10     1e-04   2171.20 LFT 160205 2005-02-16
# Observando as últimos observações
tail(my.df)
##         ref.date yield.bid price.bid             asset.code matur.date
## 64482 2022-07-20    0.0626   1003.79 NTN-B Principal 150545 2045-05-15
## 64483 2022-07-21    0.0621   1014.63 NTN-B Principal 150545 2045-05-15
## 64484 2022-07-22    0.0617   1022.98 NTN-B Principal 150545 2045-05-15
## 64485 2022-07-25    0.0615   1027.40 NTN-B Principal 150545 2045-05-15
## 64486 2022-07-26    0.0619   1018.68 NTN-B Principal 150545 2045-05-15
## 64487 2022-07-27    0.0629    997.03 NTN-B Principal 150545 2045-05-15
# Entendendo a estrutura dos dados
str(my.df)
## 'data.frame':    64479 obs. of  5 variables:
##  $ ref.date  : Date, format: "2005-01-03" "2005-01-04" ...
##  $ yield.bid : num  0e+00 0e+00 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 1e-04 ...
##  $ price.bid : num  2164 2166 2167 2168 2170 ...
##  $ asset.code: chr  "LFT 160205" "LFT 160205" "LFT 160205" "LFT 160205" ...
##  $ matur.date: Date, format: "2005-02-16" "2005-02-16" ...
# Verificando o número de colunas
length(my.df)
## [1] 5
# Verificando o número de linhas
nrow(my.df)
## [1] 64479
# Entendendo a distribuição das datas de maturidade
table(my.df$matur.date)
## 
## 2005-02-16 2006-01-18 2006-08-15 2007-01-17 2007-05-15 2008-06-18 2008-08-15 
##         30        263        405        510        465        862        719 
## 2009-03-18 2009-05-15 2010-03-17 2010-08-15 2011-03-16 2011-05-15 2012-03-07 
##       1053       1091       1084       1143       1190       1290       1335 
## 2012-08-15 2013-03-07 2013-03-08 2013-05-15 2014-03-07 2015-03-07 2015-05-15 
##       1312       1412         14       1321       1527       1252       5050 
## 2017-03-07 2017-05-15 2019-05-15 2020-08-15 2021-03-01 2023-03-01 2024-08-15 
##       1543       2497       1580       2860       1484       1356       8635 
## 2024-09-01 2025-03-01 2026-08-15 2027-03-01 2030-08-15 2032-08-15 2035-05-15 
##        366        867       2228        366        612        108       7154 
## 2040-08-15 2045-05-15 2050-08-15 2055-05-15 
##        612       5741       2530        612
# Entendendo a estrutura dos dados
table(my.df$asset.code)
## 
##             LFT 010321             LFT 010323             LFT 010325 
##                   1484                   1356                    867 
##             LFT 010327             LFT 010924             LFT 070312 
##                    366                    366                   1335 
##             LFT 070313             LFT 070314             LFT 070315 
##                   1412                   1527                   1252 
##             LFT 070317             LFT 080313             LFT 160205 
##                   1543                     14                     30 
##             LFT 160311             LFT 170107             LFT 170310 
##                   1190                    510                   1084 
##             LFT 180106             LFT 180309             LFT 180608 
##                    263                   1053                    862 
##           NTN-B 150507           NTN-B 150509           NTN-B 150511 
##                    465                   1091                   1290 
##           NTN-B 150513           NTN-B 150515           NTN-B 150517 
##                   1321                   2592                   2497 
##           NTN-B 150535           NTN-B 150545           NTN-B 150555 
##                   4064                   4385                    612 
##           NTN-B 150806           NTN-B 150808           NTN-B 150810 
##                    405                    719                   1143 
##           NTN-B 150812           NTN-B 150820           NTN-B 150824 
##                   1312                   2860                   4385 
##           NTN-B 150826           NTN-B 150830           NTN-B 150832 
##                   1616                    612                    108 
##           NTN-B 150840           NTN-B 150850 NTN-B Principal 150515 
##                    612                   2530                   2458 
## NTN-B Principal 150519 NTN-B Principal 150535 NTN-B Principal 150545 
##                   1580                   3090                   1356 
## NTN-B Principal 150824 NTN-B Principal 150826 
##                   4250                    612
## A data de maturidade, matur.date, é um parâmetro que você deve modificar. Escolha diferentes datas, este parâmetro está no formato "aaaa-mm-dd"
NTNBP <- my.df %>%
  filter(matur.date == as.Date("2025-03-01") )

p <- ggplot(data = NTNBP, 
            aes(x = as.Date(ref.date), 
                y = price.bid, 
                color = asset.code)) + 
  geom_line(size = 1) + scale_x_date() + labs(title = '', x = 'Dates')

print(p)

Conclusão

Para um melhor planejamento, seria necessário o melhor domínio no R. Aconteceu uma certa limitação nas análises gráficas.