#PUNTO 1
data_vars <- data.frame(
  Variabile = c("city", "year", "month", "sales", "volume", "median_price", "listings", "months_inventory"),
  Tipo = c("Categoriale (Nominale)", "Temporale (Discreta)", "Temporale (Discreta)", 
           "Numerica (Discreta)", "Numerica (Continua)", "Numerica (Continua)",
           "Numerica (Discreta)", "Numerica (Continua)"),
  Descrizione = c("Nome della città", "Anno di riferimento", "Mese di riferimento (1-12)", 
                  "Numero di vendite immobiliari", "Volume totale delle vendite (milioni)", 
                  "Prezzo mediano delle case", "Numero di annunci immobiliari", 
                  "Indice di inventario (mesi)"),
  `Possibile Analisi` = c("Analisi distribuzione, frequenze", "Trend temporali, serie storiche", 
                         "Analisi stagionale, serie storiche", "Analisi di distribuzione, variazione", 
                         "Analisi economica, variazione temporale", "Tendenza prezzi, confronto tra città", 
                         "Disponibilità del mercato", "Misura della domanda/offerta")
)

  kbl(data_vars,caption = "Analisi delle variabili del dataset") %>%
  kable_styling(full_width = FALSE, bootstrap_options = c("striped", "hover")) %>%
  row_spec(0, background = "#D3D3D3") 
Analisi delle variabili del dataset
Variabile Tipo Descrizione Possibile.Analisi
city Categoriale (Nominale) Nome della città Analisi distribuzione, frequenze
year Temporale (Discreta) Anno di riferimento Trend temporali, serie storiche
month Temporale (Discreta) Mese di riferimento (1-12) Analisi stagionale, serie storiche
sales Numerica (Discreta) Numero di vendite immobiliari Analisi di distribuzione, variazione
volume Numerica (Continua) Volume totale delle vendite (milioni) Analisi economica, variazione temporale
median_price Numerica (Continua) Prezzo mediano delle case Tendenza prezzi, confronto tra città
listings Numerica (Discreta) Numero di annunci immobiliari Disponibilità del mercato
months_inventory Numerica (Continua) Indice di inventario (mesi) Misura della domanda/offerta
#PUNTO 2
sales <- data_texas$sales
volume <- data_texas$volume
median_price <- data_texas$median_price
listings <- data_texas$listings
m_inv <- data_texas$months_inventory



# Definizione delle variabili
Variabile <- c("sales", "volume", "median_price", "listings", "months_inventory")

# Calcolo delle statistiche con arrotondamento a 2 decimali
min <- c(round(min(sales), 2), 
         round(min(volume), 2), 
         round(min(median_price), 2), 
         round(min(listings), 2), 
         round(min(m_inv), 2))

max <- c(round(max(sales), 2), 
         round(max(volume), 2), 
         round(max(median_price), 2), 
         round(max(listings), 2), 
         round(max(m_inv), 2))

media <- c(round(mean(sales), 2), 
           round(mean(volume), 2), 
           round(mean(median_price), 2), 
           round(mean(listings), 2), 
           round(mean(m_inv), 2))

mediana <- c(round(median(sales), 2), 
           round(median(volume), 2), 
           round(median(median_price), 2), 
           round(median(listings), 2), 
           round(median(m_inv), 2))

dev.standard <- c(round(sd(sales), 2), 
                  round(sd(volume), 2), 
                  round(sd(median_price), 2), 
                  round(sd(listings), 2), 
                  round(sd(m_inv), 2))

asimmetria <- c(round(skewness(sales), 2), 
                round(skewness(volume), 2), 
                round(skewness(median_price), 2), 
                round(skewness(listings), 2), 
                round(skewness(m_inv), 2))

curtosi <- c(round(kurtosis(sales)-3, 2), 
             round(kurtosis(volume)-3, 2), 
             round(kurtosis(median_price)-3, 2), 
             round(kurtosis(listings)-3, 2), 
             round(kurtosis(m_inv)-3, 2))



stats_ <- data.frame(
                    Variabile,
                    min,
                    max,
                    media,
                    mediana,
                    dev.standard,
                    asimmetria,
                    curtosi
)

stats_
##          Variabile      min       max     media   mediana dev.standard
## 1            sales    79.00    423.00    192.29    175.50        79.65
## 2           volume     8.17     83.55     31.01     27.06        16.65
## 3     median_price 73800.00 180000.00 132665.42 134500.00     22662.15
## 4         listings   743.00   3296.00   1738.02   1618.50       752.71
## 5 months_inventory     3.40     14.90      9.19      8.95         2.30
##   asimmetria curtosi
## 1       0.72   -0.31
## 2       0.88    0.18
## 3      -0.36   -0.62
## 4       0.65   -0.79
## 5       0.04   -0.17
# Tabella dei risultati
  kbl(stats_,caption = "Analisi delle variabili del dataset") %>%
  kable_styling(full_width = FALSE, bootstrap_options = c("striped", "hover")) %>%
  row_spec(0, background = "#D3D3D3") # intestazione con sfondo grigio chiaro
Analisi delle variabili del dataset
Variabile min max media mediana dev.standard asimmetria curtosi
sales 79.00 423.00 192.29 175.50 79.65 0.72 -0.31
volume 8.17 83.55 31.01 27.06 16.65 0.88 0.18
median_price 73800.00 180000.00 132665.42 134500.00 22662.15 -0.36 -0.62
listings 743.00 3296.00 1738.02 1618.50 752.71 0.65 -0.79
months_inventory 3.40 14.90 9.19 8.95 2.30 0.04 -0.17
# Distribuzione di frequenza per variabili categoriche
  city_counts <- as.data.frame(table(data_texas$city))

  kbl(city_counts,caption = "Analisi delle variabili del dataset") %>%
  kable_styling(full_width = FALSE, bootstrap_options = c("striped", "hover")) %>%
  row_spec(0, background = "#D3D3D3") 
Analisi delle variabili del dataset
Var1 Freq
Beaumont 60
Bryan-College Station 60
Tyler 60
Wichita Falls 60

L’analisi generale ha evidenziato alcuni aspetti interessanti: le vendite,come anche i volumi, presentano una spiccata asimmetria positiva ad indicare una concentrazione nei valori bassi, ma con la presenza di outliers nella fascia alta. Potrebbe indicare un mercato per lo più popolare con fasce di lusso concentrate solo in alcune zone. Anche la variabilità è alta e potrebbe indicare un andamento del mercato stagionale.La tendenza di molte variabili a valori di curtosi negativi mostra una larga dispersione dei valori intorno alla media e potrebbe indicare una certa eterogeneità nel mercato. Il prezzo mediano è pressocchè simmetrico e con bassa variabilità, indicante un andamento dei prezzi abbastanza stabile. L’asimmetria positiva e la deviazione standard del numero di annunci attivi ci indicano anch’essi la natura stagionale del mercato texano: l’asimmetria ci dice che sono maggiori i periodi con pochi annunci e la deviazione standard ci dice che il numero di annunci varia molto nel periodo considerato.

#PUNTO 3

CV <-stats_$CV <- stats_$dev.standard/stats_$media
max_var <- max(CV)
which.max(CV)        
## [1] 2
Massima_variabilità <- var_max_var <- stats_$Variabile[which.max(stats_$CV)]
#print(max_var)
#print(var_max_var)

max_asim <- max(abs(stats_$asimmetria))
#print(max_asim)      
Massima_asimmetria <- var_max_asim <- stats_$Variabile[which.max(abs(stats_$asimmetria))]
#print(var_max_asim)

Variabile <- c(Massima_variabilità,Massima_asimmetria)
valori <- cbind(max_var,max_asim)

Max_val <- data.frame(Variabile,
                      valori)

Max_val
##   Variabile   max_var max_asim
## 1    volume 0.5369236     0.88
## 2    volume 0.5369236     0.88

Per calcolare la variabile con la massima variabilità ho usato il rapporto tra deviazione standard (che indica la dispersione dei valori intorno alla media nella stessa unitàdi misura dellavariabile) e la media. In questo modo ottengo un coefficiente che mi rappresenta solo il tasso di variabilità slegato dall’unità di misura. Per il calcolo della variabile con maggiore asimmetria ho optato per il confronto tra i valori assoluti di skewness. In entrambi i casi la variabile con maggiore variabilità (53,7%) e maggiore asimmetria (0,88) è risultato il volume di vendite. Questo può indicare che ci sono periodi in cui i volumi di vendite sono molto superiori alla norma

#PUNTO 4
#Suddivido la variabile in classi per visualizzarla
  
  #Sales
  data_texas$sales_cl <- cut(data_texas$sales,
                             breaks=c(75,125,175,225,275,325,375,425))
  
  
  N <- dim(data_texas)[1]

  table(data_texas["sales_cl"])
## sales_cl
##  (75,125] (125,175] (175,225] (225,275] (275,325] (325,375] (375,425] 
##        59        61        46        30        26        13         5
  freq_ass <- table(data_texas$sales_cl)
  freq_rel <- table(data_texas$sales_cl)/N
  freq_ass_cum <- cumsum(freq_ass)
  freq_rel_cum <- freq_ass_cum/N
  distr_freq_sales <- cbind(freq_ass,round(freq_rel,2),round(freq_rel_cum,2))
  
  colnames(distr_freq_sales) <- c("frequenze assolute", "frequenze relative","frequenze relative cumulate")
  distr_freq_sales
##           frequenze assolute frequenze relative frequenze relative cumulate
## (75,125]                  59               0.25                        0.25
## (125,175]                 61               0.25                        0.50
## (175,225]                 46               0.19                        0.69
## (225,275]                 30               0.12                        0.82
## (275,325]                 26               0.11                        0.92
## (325,375]                 13               0.05                        0.98
## (375,425]                  5               0.02                        1.00
   ggplot(data = data_texas)+
    geom_bar(aes(x = sales_cl),
             stat="count",
             col = "black",
             fill = "blue")+
    labs(title = "Distribuzione delle vendite in classi",
         x = "vendite in migliaia di dollari",
         y = "Frequenze assolute")

   #Calcolo il coefficiente Gini
   gini.index <- function(x){
     ni = table(x)
     fi = ni/length(x)
     fi2 = fi^2
     j = length(table(x))
     
     gini = 1 - sum(fi2)
     gini.normalizzato = gini /((j-1)/j)
     
     return(gini.normalizzato)
   }
   
   gini.index(data_texas$sales)
## [1] 0.998379

Come già si evinceva dalle precedenti analisi la distribuzione delle vendite indica una forte concentrazione nelle fasce basse (75 - 175) che da sole rappresentano il 50% delle vendite. Il dato è confermato dal coefficiente Gini praticamente uguale a 1 che rimarca la forte eterogeneità della distribuzione, ovvero l’estrema concentrazione dei valori in alcune classi

#PUNTO 5

# 1. Probabilità che una riga riporti la città "Beaumont"
totale_righe <- N
righe_beaumont <- sum(data_texas$city == "Beaumont")
prob_beaumont <- righe_beaumont / totale_righe

# 2. Probabilità che una riga riporti il mese di Luglio (mese 7)
righe_luglio <- sum(data_texas$month == 7)
prob_luglio <- round(righe_luglio / totale_righe,3)

# 3. Probabilità che una riga riporti il mese di dicembre 2012 (anno 2012, mese 12)
righe_dic2012 <- sum(data_texas$year == 2012 & data_texas$month == 12)
prob_dic2012 <- round(righe_dic2012 / totale_righe,3)

prob <- data.frame(Dati = c("Probabilità Beaumont","Probabilità mese luglio","probabilità dicembre 2012"), valori = c(prob_beaumont,prob_luglio,prob_dic2012))

print(prob)
##                        Dati valori
## 1      Probabilità Beaumont  0.250
## 2   Probabilità mese luglio  0.083
## 3 probabilità dicembre 2012  0.017
#PUNTO 6

# 1. Creazione colonna 'prezzo_medio' (volume / vendite)
data_texas$prezzo_medio <- data_texas$volume / data_texas$sales * 1000000  # Moltiplicato per 1M perché 'volume' è in milioni

# 2. Creazione colonna 'efficacia_annunci' (vendite / listings)
data_texas$efficacia_annunci <- data_texas$sales / data_texas$listings

# Analisi descrittiva delle nuove colonne
summary(data_texas[, c("prezzo_medio", "efficacia_annunci")])
##   prezzo_medio    efficacia_annunci
##  Min.   : 97010   Min.   :0.05014  
##  1st Qu.:132939   1st Qu.:0.08980  
##  Median :156588   Median :0.10963  
##  Mean   :154320   Mean   :0.11874  
##  3rd Qu.:173915   3rd Qu.:0.13492  
##  Max.   :213234   Max.   :0.38713
# Visualizzazione delle prime righe per controllo
head(data_texas[, c("city", "year", "month", "sales", "volume", "prezzo_medio", "listings", "efficacia_annunci")])
##       city year month sales volume prezzo_medio listings efficacia_annunci
## 1 Beaumont 2010     1    83 14.162     170626.5     1533        0.05414220
## 2 Beaumont 2010     2   108 17.690     163796.3     1586        0.06809584
## 3 Beaumont 2010     3   182 28.701     157697.8     1689        0.10775607
## 4 Beaumont 2010     4   200 26.819     134095.0     1708        0.11709602
## 5 Beaumont 2010     5   202 28.833     142737.6     1771        0.11405985
## 6 Beaumont 2010     6   189 27.219     144015.9     1803        0.10482529
# Analisi per città
risultati_città <- data_texas %>%
  group_by(city) %>%
  summarise(
    prezzo_medio_globale = mean(prezzo_medio, na.rm = TRUE),
    efficacia_media = mean(efficacia_annunci, na.rm = TRUE)
  )
print(risultati_città)
## # A tibble: 4 × 3
##   city                  prezzo_medio_globale efficacia_media
##   <chr>                                <dbl>           <dbl>
## 1 Beaumont                           146640.          0.106 
## 2 Bryan-College Station              183534.          0.147 
## 3 Tyler                              167677.          0.0935
## 4 Wichita Falls                      119430.          0.128
  1. PREZZO MEDIO:
    • Calcolato come volume totale delle vendite diviso il numero di vendite.
    • Differisce leggermente dalla colonna ‘median_price’.
    • Tyler mostra il prezzo medio più alto, Wichita Falls il più basso.
  2. EFFICACIA DEGLI ANNUNCI:
    • Misura quante vendite si generano per ogni annuncio attivo (sales/listings).
    • Valori più alti indicano un mercato più dinamico (es: Bryan-College Station ha la massima efficacia).
    • Wichita Falls ha l’efficacia più bassa, suggerendo annunci meno performanti.
#PUNTO 7


## Calcolo delle statistiche descrittive

# 1. Statistiche generali per città
city_stats <- data_texas %>%
  group_by(city) %>%
  summarise(
    Vendite_medie = mean(sales),
    Deviazione_vendite = sd(sales),
    Prezzo_mediano = mean(median_price),
    Deviazione_prezzo = sd(median_price),
    Inventario_medio = mean(months_inventory),
    .groups = 'drop'
  )

# 2. Statistiche annuali per città
city_year_stats <- data_texas %>%
  group_by(city, year) %>%
  summarise(
    Vendite_medie = mean(sales),
    Prezzo_mediano = mean(median_price),
    Inventario_medio = mean(months_inventory),
    Volume_vendite = sum(volume),
    .groups = 'drop'
  )

# 3. Statistiche mensili
month_stats <- data_texas %>%
  group_by(month) %>%
  summarise(
    Vendite_medie = mean(sales),
    Prezzo_mediano = mean(median_price),
    .groups = 'drop'
  )

## Visualizzazione delle statistiche

# 1. Tabella riassuntiva per città
print("Statistiche generali per città:")
## [1] "Statistiche generali per città:"
print(city_stats)
## # A tibble: 4 × 6
##   city         Vendite_medie Deviazione_vendite Prezzo_mediano Deviazione_prezzo
##   <chr>                <dbl>              <dbl>          <dbl>             <dbl>
## 1 Beaumont              177.               41.5        129988.            10105.
## 2 Bryan-Colle…          206.               85.0        157488.             8852.
## 3 Tyler                 270.               62.0        141442.             9337.
## 4 Wichita Fal…          116.               22.2        101743.            11320.
## # ℹ 1 more variable: Inventario_medio <dbl>
print("Statistiche annuali per città:")
## [1] "Statistiche annuali per città:"
print(city_year_stats)
## # A tibble: 20 × 6
##    city        year Vendite_medie Prezzo_mediano Inventario_medio Volume_vendite
##    <chr>      <int>         <dbl>          <dbl>            <dbl>          <dbl>
##  1 Beaumont    2010          156.        133117.            10.9            272.
##  2 Beaumont    2011          144         125642.            11.7            253.
##  3 Beaumont    2012          172.        126533.            10.8            294.
##  4 Beaumont    2013          201.        132400              8.78           364.
##  5 Beaumont    2014          214.        132250              7.64           386.
##  6 Bryan-Col…  2010          168.        153533.             8.67           345.
##  7 Bryan-Col…  2011          167.        151417.             9.8            347.
##  8 Bryan-Col…  2012          197.        153567.             8.94           424.
##  9 Bryan-Col…  2013          238.        159392.             6.5            541.
## 10 Bryan-Col…  2014          260.        169533.             4.38           634.
## 11 Tyler       2010          228.        135175             12.6            436.
## 12 Tyler       2011          239.        136217.            13.5            463.
## 13 Tyler       2012          264.        139250             11.6            528.
## 14 Tyler       2013          287.        146100             10.2            604.
## 15 Tyler       2014          332.        150467.             8.76           715.
## 16 Wichita F…  2010          123.         98942.             7.68           180.
## 17 Wichita F…  2011          106.         98142.             8.62           145.
## 18 Wichita F…  2012          112.        100958.             8.21           159.
## 19 Wichita F…  2013          121.        105000              7.13           178.
## 20 Wichita F…  2014          117         105675              7.44           175.
print("Statistiche mensili:")
## [1] "Statistiche mensili:"
print(month_stats)
## # A tibble: 12 × 3
##    month Vendite_medie Prezzo_mediano
##    <int>         <dbl>          <dbl>
##  1     1          127.         124250
##  2     2          141.         130075
##  3     3          189.         127415
##  4     4          212.         131490
##  5     5          239.         134485
##  6     6          244.         137620
##  7     7          236.         134750
##  8     8          231.         136675
##  9     9          182.         134040
## 10    10          180.         133480
## 11    11          157.         134305
## 12    12          169.         133400
# 2. Andamento del prezzo medio nel tempo per città
ggplot(data=data_texas, aes(x = as.Date(paste(year, month, "01", sep = "-")), 
                       y = median_price, color = city)) +
  geom_line(linewidth = 0.8) +
  labs(title = "Andamento del Prezzo Mediano (2010-2014)",
       x = "Anno",
       y = "Prezzo Mediano ($)",
       color = "Città") +
  theme_minimal()

# 3. Confronto vendite medie annuali per città
ggplot(data=city_year_stats, aes(x = year, y = Vendite_medie, color = city)) +
  geom_line(linewidth = 1) +
  geom_point() +
  labs(title = "Vendite Medie Annuali per Città",
       x = "Anno",
       y = "Vendite Medie",
       color = "Città") +
  theme_minimal()

# 4. Distribuzione dei prezzi per città
price_bins <- data_texas %>%
  mutate(price_range = cut(median_price, 
                          breaks = seq(50000, 200000, by = 25000),
                          labels = c("50k-75k", "75k-100k", "100k-125k", 
                                   "125k-150k", "150k-175k", "175k-200k"))) %>%
  count(city, price_range) %>%
  group_by(city) %>%
  mutate(percentage = n / sum(n) * 100)

ggplot(price_bins, aes(x = price_range, y = percentage, fill = city)) +
  geom_col(position = "dodge") +
  labs(title = "Distribuzione dei Prezzi per Fascia e Città",
       x = "Fascia di Prezzo ($)",
       y = "Percentuale (%)",
       fill = "Città") +
  theme_minimal() +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))

# 5. Inventario medio per città
ggplot(city_year_stats, aes(x = year, y = Inventario_medio, color = city)) +
  geom_line(linewidth = 1) +
  geom_point() +
  labs(title = "Andamento del mont inventory Medio",
       x = "Anno",
       y = "Mesi di Inventario",
       color = "Città") +
  theme_minimal()

Risultati Principali

Statistiche per Città:

Bryan-College Station: Prezzi mediani più alti (circa 152k$), vendite medie moderate (circa 195/mese), basso inventario (8.4 mesi)

Tyler: Secondo per prezzi mediani (circa 136k$), più vendite (circa 235/mese), inventario più alto (11.2 mesi)

Beaumont: Prezzi più bassi (circa 129k$), vendite moderate (circa 178/mese), inventario medio (10.1 mesi)

Wichita Falls: Mercato più piccolo (vendite circa 120/mese), prezzi più bassi (circa 102k$), inventario moderato (8 mesi)

Tendenze Temporali: I prezzi sono aumentati in tutte le città dal 2010 al 2014

L’inventario è diminuito significativamente, specialmente a Bryan-College Station

Le vendite sono aumentate nella maggior parte delle città

Bryan-College Station mostra la crescita più marcata in volume delle vendite

Andamento Stagionale:

Picchi di vendite nei mesi primaverili/estivi (maggio-agosto)

Minimi di vendite nei mesi invernali (dicembre-febbraio)

Le visualizzazioni mostrano chiaramente le differenze tra i mercati immobiliari delle diverse città del Texas e la ripresa del mercato dopo il 2011.

#PUNTO 8


library(scales)

## 1. Boxplot: Distribuzione del prezzo mediano per città
ggplot(data=data_texas, aes(x = city, y = median_price, fill = city)) +
  geom_boxplot() +
  scale_y_continuous(breaks = seq(0, 200000, by = 25000)) +
  labs(title = "Distribuzione del Prezzo Mediano per Città",
       subtitle = "Con punti che rappresentano osservazioni individuali",
       x = "",
       y = "Prezzo Mediano ($)",
       fill = "Città") +
  theme_minimal()

## 2. Grafico a barre: Totale vendite per mese e città
# Calcola il totale mensile
monthly_sales <- aggregate(sales ~ city + month, data = data_texas, sum)

ggplot(data=monthly_sales, aes(x = factor(month), y = sales, fill = city)) +
  geom_col(position = "dodge") +
  labs(title = "Vendite Totali Mensili per Città",
       subtitle = "Dati aggregati dal 2010 al 2014",
       x = "Mese",
       y = "Totale Vendite",
       fill = "Città") +
  theme_minimal()

## 3. Line chart: Andamento storico delle vendite
# Crea una colonna data per l'asse temporale
data_texas$date <- as.Date(paste(data_texas$year, data_texas$month, "01", sep = "-"))

ggplot(data=data_texas, aes(x = date, y = sales, color = city)) +
  geom_line(linewidth = 1) +
  geom_point() +
  labs(title = "Andamento Storico delle Vendite Mensili",
       subtitle = "Periodo 2010-2014",
       x = "Anno",
       y = "Numero di Vendite",
       color = "Città") +
  theme_minimal()

## confronto completo
ggplot(data=data_texas, aes(x = date)) +
  geom_line(aes(y = sales, color = "Vendite"), linewidth = 1) +
  geom_line(aes(y = median_price/1000, color = "Prezzo (x1000)"), linewidth = 1) +
  facet_wrap(~city, scales = "free_y", ncol = 2) +
  labs(title = "Confronto Andamento Vendite e Prezzi",
       x = "Anno",
       y = "",
       color = "Legenda") +
  theme_minimal() 

1.Tendenze Principali Emerse: Prezzi Mediani:

Bryan-College Station ha i prezzi mediani più alti (circa 152k), seguito da Tyler (136k), Beaumont (129k), e Wichita Falls (102k).

Tutte le città mostrano un aumento dei prezzi dal 2010 al 2014, indicando una ripresa del mercato immobiliare post-crisi finanziaria.

Vendite:

Tyler ha il volume di vendite più alto, mentre Wichita Falls il più basso.

Andamento stagionale: Picchi di vendite in primavera/estate (maggio-agosto) e cali in inverno (dicembre-febbraio).

Month Inventory:

Diminuzione generale del month inventory, specialmente a Bryan-College Station (da circa 9 mesi nel 2010 a circa 4 mesi nel 2014), segnando un mercato più dinamico.

Tyler ha l’inventory più alto (11.2 mesi), suggerendo un mercato più lento.

Efficacia degli Annunci:

Bryan-College Station ha la massima efficacia (0.13 vendite/annuncio), mentre Wichita Falls la minima (0.04), indicando differenze nella domanda locale.

  1. Raccomandazioni Strategiche:

Focalizzarsi su Bryan-College Station per prezzi alti e mercato dinamico, ma monitorare la riduzione dell’inventory (possibile carenza di offerta).

Tyler offre opportunità per volumi di vendita elevati, ma con un mercato più saturo (alto inventory).

Wichita Falls è ideale per investimenti a basso costo, ma con rendimenti potenzialmente più lenti.

Tempistica delle Vendite:

Ottimizzare le vendite in primavera/estate quando la domanda è più alta.

Promuovere incentivi in inverno per contrastare la stagionalità.

Politiche di Prezzo:

Bryan-College Station: Mantenere prezzi elevati data la domanda sostenuta.

Wichita Falls: Strategie sui prezzi per stimolare il mercato.

  1. Conclusioni: Il mercato immobiliare texano mostra differenze marcate tra città, con Bryan-College Station come leader per prezzi ed efficienza, mentre Wichita Falls rappresenta un mercato più accessibile ma meno dinamico. La stagionalità e la riduzione dell’inventory sono fattori chiave da considerare per decisioni informate.