knitr::opts_chunk$set(
echo = TRUE,
eval = TRUE,
warning = FALSE,
message = FALSE,
comment = NA,
fig.width = 7, fig.height = 4, dpi = 150
)
library(dplyr)
library(ggplot2)
library(moments)
library(zoo)
library(gridExtra)
library(gghalves)
# Funzione per l’indice di eterogeneità di Gini
gini.index <- function(x){
ni <- table(x)
fi <- ni / length(x)
fi2 <- fi^2
J <- length(ni)
gini <- 1 - sum(fi2)
gini.norm <- gini / ((J - 1) / J)
return(gini.norm)
}
# Coefficiente di variazione
CV <- function(x){
return( sd(x) / mean(x)*100 )
}
data <- read.csv("realestate_texas.csv")
DT::datatable(head(data,100)) #tabella interattiva
glimpse(data)
Rows: 240
Columns: 8
$ city <chr> "Beaumont", "Beaumont", "Beaumont", "Beaumont", "Beau…
$ year <int> 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010, 2010,…
$ month <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1, 2, 3, 4, 5,…
$ sales <int> 83, 108, 182, 200, 202, 189, 164, 174, 124, 150, 150,…
$ volume <dbl> 14.162, 17.690, 28.701, 26.819, 28.833, 27.219, 22.70…
$ median_price <dbl> 163800, 138200, 122400, 123200, 123100, 122800, 12430…
$ listings <int> 1533, 1586, 1689, 1708, 1771, 1803, 1857, 1830, 1829,…
$ months_inventory <dbl> 9.5, 10.0, 10.6, 10.6, 10.9, 11.1, 11.7, 11.6, 11.7, …
Il dataset utilizzato per l’analisi del mercato immobiliare del Texas raccoglie dati mensili relativi alle vendite di immobili in diverse città texane. Ogni osservazione rappresenta una combinazione di città, mese e anno, e include informazioni quantitative e qualitative sulle dinamiche di mercato.
Le variabili presenti sono:
Pur esserendo quantitativamente discrete, le varabili temporali possono essere considerate in relazione a: serie temporali, trend e analsi stagionali. A tal fine saranno composte insieme per creare una variabile temporale completa utile per serie storiche.
data$date <- as.Date(paste(data$year, data$month, "1", sep = "-"))
Le variabili qualitative nominali, come ad esempio la variabile city, rappresentano categorie prive di un ordine naturale. Per queste variabili è possibile effettuare analisi descrittive tramite distribuzioni di frequenza, supportate da grafici a barre o grafici a torta. Una misura utile in questo contesto è la moda, ovvero la categoria che si presenta con maggiore frequenza. Inoltre, è possibile calcolare indici di eterogeneità, come l’indice di Gini, che misura quanto la distribuzione sia concentrata o dispersa. Le variabili qualitative possono essere confrontate tra loro o con variabili quantitative tramite tabelle di contingenza.
Le variabili quantitative discrete, come sales (numero di vendite) e listings (numero di annunci attivi), sono basate su conteggi interi. Consentono il calcolo di indici di posizione come media, mediana e moda, e di indici di dispersione come la deviazione standard, l’intervallo interquartile (IQR) e il coefficiente di variazione (CV), che esprime la variabilità relativa rispetto alla media. Quando i valori non sono troppi, è utile costruire distribuzioni di frequenza. A livello grafico, risultano efficaci istogrammi e boxplot, utili per osservare la distribuzione e individuare eventuali outlier.
Le variabili quantitative continue, come volume (valore totale delle vendite), median_price (prezzo mediano degli immobili) e months_inventory (mesi necessari a vendere le case), permettono analisi statistiche più approfondite. Oltre ai tradizionali indici di posizione e dispersione (incluso il CV), è possibile analizzare la forma della distribuzione attraverso l’asimmetria (skewness) e la curtosi (kurtosis). Queste variabili si prestano anche a essere suddivise in classi per costruire distribuzioni di frequenza o analizzare la concentrazione dei valori. Dal punto di vista grafico, sono rappresentabili con istogrammi, boxplot, curve di densità e grafici di confronto tra gruppi (es. tra città). Inoltre, possono essere utilizzate all’interno di modelli statistici come analisi dei trend temporali per esplorare relazioni.
Definendo con:
mu la media
SD la deviazione standard
CV il Coefficiente di variazione
γ1 l’asimmetria di fisher
γ₂ la curtosi centrata sulla normale
numeric_vars <- c("sales", "volume", "median_price", "listings", "months_inventory")
for (var in numeric_vars) {
cat("Variabile:", var, "\n")
x <- data[[var]]
cat("Quantili:","\n")
print(quantile(x))
cat("IQR:", round(IQR(x),2), "\n")
cat("Media:", round(mean(x),2), "\t")
cat("SD:", round(sd(x),2), "\t")
cat("CV:", round(CV(x),2), "\n")
cat("γ1:", round(skewness(x),2), "\t")
cat("γ₂:", round(kurtosis(x)-3,2), "\n\n")
}
Variabile: sales
Quantili:
0% 25% 50% 75% 100%
79.0 127.0 175.5 247.0 423.0
IQR: 120
Media: 192.29 SD: 79.65 CV: 41.42
γ1: 0.72 γ₂: -0.31
Variabile: volume
Quantili:
0% 25% 50% 75% 100%
8.1660 17.6595 27.0625 40.8930 83.5470
IQR: 23.23
Media: 31.01 SD: 16.65 CV: 53.71
γ1: 0.88 γ₂: 0.18
Variabile: median_price
Quantili:
0% 25% 50% 75% 100%
73800 117300 134500 150050 180000
IQR: 32750
Media: 132665.4 SD: 22662.15 CV: 17.08
γ1: -0.36 γ₂: -0.62
Variabile: listings
Quantili:
0% 25% 50% 75% 100%
743.0 1026.5 1618.5 2056.0 3296.0
IQR: 1029.5
Media: 1738.02 SD: 752.71 CV: 43.31
γ1: 0.65 γ₂: -0.79
Variabile: months_inventory
Quantili:
0% 25% 50% 75% 100%
3.40 7.80 8.95 10.95 14.90
IQR: 3.15
Media: 9.19 SD: 2.3 CV: 25.06
γ1: 0.04 γ₂: -0.17
sales
CV = 41.4%: vendite abbastanza ballerine tra i mesi.
γ₁ = +0.72: pochi mesi con vendite molto alte (picchi a destra).
Andamento variabile + qualche mese “boom”.
volume
CV = 53.7%: la più instabile: valori mensili molto dispersi.
γ₁ = +0.88: pochi mesi con volumi eccezionalmente alti (grandi
transazioni).
Pochi mesi con affari grossi che tirano su la media.
median_price
CV = 17.1%: stabile.
γ₁ = −0.36: coda a sinistra: qualche mese con prezzi più bassi del
solito, ma niente picchi alti.
Prezzi centrati, senza “strappi”.
listings
CV = 43.3%: offerta molto variabile.
γ₁ = +0.65: qualche mese con tantissimi annunci (coda a destra).
L’offerta si gonfia in certi periodi.
months_inventory
CV = 25.1%: abbastanza stabile.
γ₁ = +0.04 ≈ 0: praticamente simmetrica.
I tempi di assorbimento del mercato cambiano poco.
Le variabili volume e sales sono le più variabili e asimmetriche,
riflettendo la dinamicità del mercato.
Il prezzo mediano e i tempi di vendita risultano invece stabili,
segnalando che, pur variando il numero e il valore totale delle vendite,
i prezzi delle abitazioni e i ritmi di mercato non subiscono forti
oscillazioni.
Queste evidenze suggeriscono che la volatilità delle vendite è legata
più ai volumi e alla quantità di transazioni che non ai prezzi medi
delle abitazioni.
city_freq <- table(data$city)
city_rel <- prop.table(city_freq)
city_df <- data.frame(Città = names(city_freq),
n = as.numeric(city_freq),
f = round(as.numeric(city_rel), 2))
city_df
Città n f
1 Beaumont 60 0.25
2 Bryan-College Station 60 0.25
3 Tyler 60 0.25
4 Wichita Falls 60 0.25
La variabile city è qualitativa nominale. La tabella mostra la numerosità delle osservazioni per ogni città texana. Le frequenze relative indicano la quota percentuale di dati riferiti a ciascuna città. Un’elevata disomogeneità (una città molto più frequente delle altre) implica bassa eterogeneità e indice di Gini basso, cioè una distribuzione concentrata.
year_freq <- table(data$year)
year_rel <- prop.table(year_freq)
year_df <- data.frame(Anno = names(year_freq),
n = as.numeric(year_freq),
f = round(as.numeric(year_rel), 2))
year_df
Anno n f
1 2010 48 0.2
2 2011 48 0.2
3 2012 48 0.2
4 2013 48 0.2
5 2014 48 0.2
La variabile year rappresenta l’anno di riferimento.
Poiché tutti gli anni sono equidistanti e ricorrono per ogni città, ci
si aspetta una distribuzione piuttosto uniforme (una frequenza per anno
simile).
Eventuali squilibri possono segnalare dati mancanti o intervalli
temporali con più osservazioni.
month_freq <- table(data$month)
month_rel <- prop.table(month_freq)
month_df <- data.frame(Mese = names(month_freq),
Freq = as.numeric(month_freq),
Perc = round(as.numeric(month_rel), 2))
month_df
Mese Freq Perc
1 1 20 0.08
2 2 20 0.08
3 3 20 0.08
4 4 20 0.08
5 5 20 0.08
6 6 20 0.08
7 7 20 0.08
8 8 20 0.08
9 9 20 0.08
10 10 20 0.08
11 11 20 0.08
12 12 20 0.08
La variabile month (1–12) mostra la distribuzione delle
osservazioni tra i mesi dell’anno.
In un dataset bilanciato, la frequenza dei mesi dovrebbe essere
pressoché costante.
Differenze marcate possono indicare stagionalità o dati mancanti.
Per identificare la variabile con la maggiore variabilità e quella con la distribuzione più asimmetrica, si è utilizzato il Coefficiente di Variazione (CV) come indicatore di dispersione relativa. Il CV esprime la deviazione standard in rapporto alla media, permettendo così di confrontare la variabilità tra variabili aventi scale diverse.
Dall’analisi risulta che la variabile volume presenta il CV più elevato (53,71%), indicando una forte dispersione dei valori rispetto alla media. Inoltre, volume mostra anche il valore più alto di asimmetria positiva, con γ₁ = 0.88, segnalando una distribuzione asimmetrica verso destra, caratterizzata da una coda lunga verso valori elevati. Questo implica la presenza di osservazioni particolarmente alte rispetto alla media.
Dal punto di vista statistico, il fatto che volume abbia sia il più alto CV sia la massima asimmetria suggerisce un comportamento altamente variabile e non simmetrico. In ambito immobiliare, ciò è plausibile: il valore totale delle vendite può essere influenzato da eventi eccezionali o picchi localizzati in determinate città o mesi. Tali episodi generano una distribuzione più dispersa e con outlier verso l’alto.
Queste caratteristiche rendono il volume una variabile da monitorare.
data$price_class_k <- cut(data$median_price / 1000,
breaks = pretty(data$median_price / 1000, n = 5))
# Grafico delle classi
ggplot(data, aes(x = price_class_k)) +
geom_bar(fill = "steelblue") +
labs(title = "Prezzo mediano(in k): distribuzioni in classi", x = "Classi prezzo", y = "Frequenza assoluta")+
theme_classic()
gini <- gini.index(data$price_class)
cat("Indice di Gini normalizzato:", gini)
Indice di Gini normalizzato: 0.9005
La distribuzione del prezzo mediano è centrata sulle fasce 120–160 mila $ (picco 140–160), con coda leggermente verso i valori più bassi — in linea con γ₁ ≈ −0.36. L’indice di Gini normalizzato ≈ 0,90 indica buona eterogeneità: le vendite non sono concentrate in una sola fascia.
n <- nrow(data)
cat("Probabilità città Beaumont:", mean(data$city == "Beaumont"), "\n")
Probabilità città Beaumont: 0.25
cat("Probabilità mese Luglio:", mean(data$month == 7), "\n")
Probabilità mese Luglio: 0.08333333
cat("Probabilità dicembre 2012:", mean(data$month == 12 & data$year == 2012), "\n")
Probabilità dicembre 2012: 0.01666667
data$avg_price <- data$volume * 1e6 / data$sales
d_avg <- density(data$avg_price)
plot(d_avg, main = "Prezzo medio per transazione: funzione di densità", xlab = "Prezzo ($)")
La curva di densità è concentrata tra 120–170 mila $, con picco principale attorno a 150–160 mila $ e un secondo rigonfiamento più lieve vicino a 125–135 mila $, indizio di quasi-bimodalità (probabili sottosegmenti per città/periodo). La coda verso i valori alti è un po’ più lunga, segnalando pochi mesi con prezzi medi elevati. Nel complesso la dispersione è moderata, coerente con il CV ≈ 17% della distribuzione dei prezzi mediani.
# Efficacia degli annunci = vendite / annunci
data$effectiveness <- data$sales/data$listings
d_eff <- density(data$effectiveness)
plot(d_eff,
main = "Efficacia degli annunci: funzione di densità",
xlab = "Efficacia (vendite / annunci)",
ylab = "Densità",
xlim = c(0, 0.5))
La densità è fortemente asimmetrica a destra: picco netto intorno a 0,10 (≈10%) e coda lunga fino a ~0,4–0,5. La maggior parte dei mesi/città ha un’efficacia tra ~0,06 e 0,15; valori oltre 0,20 sono rari e indicano fasi di assorbimento eccezionalmente alto. In media significa circa 1 vendita ogni 10 annunci al mese. Ci si aspetta che quando l’efficacia cresce i mesi d’inventario calino (relazione inversa da verificare con uno scatter).
year_summary <- data %>%
group_by(city, year) %>%
summarise(
mean_price = mean(avg_price, na.rm = TRUE),
sd_price = sd(avg_price, na.rm = TRUE),
mean_effectiveness = mean(effectiveness, na.rm = TRUE)
) %>%
mutate(
lower = mean_price - sd_price,
upper = mean_price + sd_price
)
# Primo grafico: prezzo su base annua
p1 <- ggplot(year_summary, aes(x = year, y = mean_price, color = city)) +
geom_line(size = 1) +
geom_point(size = 2) +
geom_ribbon(aes(ymin = lower, ymax = upper, fill = city), alpha = 0.2, color = NA) +
labs(
title = "Prezzo medio annuo degli immobili per città (±1 SD)",
x = "Anno",
y = "Prezzo medio ($)",
color = "Città", fill = "Città"
) +
theme_minimal()
# Secondo grafico: efficacia annunci
p2 <- ggplot(year_summary, aes(x = year, y = mean_effectiveness, color = city)) +
geom_line(size = 1) +
geom_point(size = 2) +
labs(
title = "Tasso di efficacia annuo degli annunci",
x = "Anno",
y = "Efficacia (vendite /annunci)",
color = "Città"
) +
theme_minimal()
grid.arrange(p1, p2, nrow = 2)
month_summary <- data %>%
group_by(city, month) %>%
summarise(
mean_price = mean(avg_price, na.rm = TRUE),
sd_price = sd(avg_price, na.rm = TRUE),
mean_effectiveness = mean(effectiveness, na.rm = TRUE),
sd_effectiveness = sd(effectiveness, na.rm = TRUE),
.groups = "drop"
) %>%
mutate(
lower = mean_price - sd_price,
upper = mean_price + sd_price
)
# Grafico Prezzo Medio
p3 <- ggplot(month_summary, aes(x = month, y = mean_price, color = city)) +
geom_line(size = 1) +
geom_point(size = 2) +
geom_ribbon(aes(ymin = lower, ymax = upper, fill = city), alpha = 0.2, color = NA) +
scale_x_continuous(breaks = 1:12, limits = c(1, 12), expand = c(0, 0)) +
labs(
title = "Prezzo medio mensile degli immobili per città (±1 SD)",
x = "Mese", y = "Prezzo medio ($)",
color = "Città", fill = "Città"
) +
theme_minimal()
# Grafico Efficacia
p4 <- ggplot(month_summary, aes(x = month, y = mean_effectiveness, color = city)) +
geom_line(size = 1) +
geom_point(size = 2) +
scale_x_continuous(breaks = 1:12, limits = c(1, 12), expand = c(0, 0)) +
labs(
title = "Tasso di efficacia mensile degli annunci",
x = "Mese", y = "Efficacia (Vendite /Annunci)",
color = "Città"
) +
theme_minimal()
# Mostra i grafici affiancati su due righe
gridExtra::grid.arrange(p3, p4, nrow = 2)
ggplot(data, aes(x = city, y = median_price)) +
geom_half_violin(side = "l", fill = "lightblue") +
geom_half_boxplot(side = "r", fill = "pink") +
labs(title = "Box plot: prezzo mediano case", x = "Città", y = "Prezzo mediano ($)") +
theme_classic() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Gli half-violin/boxplot del prezzo mediano mostrano gap chiari tra città: bryan-college station è la più cara (mediane più alte e coda superiore estesa), Tyler è seconda, Beaumont intermedia, Eichita falls nettamente più bassa. La dispersione è contenuta ovunque, coerente con il CV ridotto dei prezzi.
ggplot(data, aes(x = city, y = volume)) +
geom_half_violin(side = "l", fill = "lightgreen") +
geom_half_boxplot(side = "r", fill = "salmon") +
labs(title = "Box plot: volume vendite", x = "Città", y = "Volume (milioni $)") +
theme_classic() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Sul volume di vendite per città emergono differenze più marcate: Tyler e Bryan-college station hanno volumi medi e variabilità più elevati, beaumont è intermedia, wichita falls ha volumi bassi e poco dispersi. Dunque i picchi di mercato sono trainati soprattutto da Tyler e Bryan.
ggplot(data, aes(x = factor(year), y = volume)) +
geom_half_violin(side = "l", fill = "lightgray") +
geom_half_boxplot(side = "r", fill = "coral") +
labs(title = "Box plot: volume vendite", x = "Anno", y = "Volume (milioni $)") +
theme_classic()
Il volume per anno evidenzia un trend crescente dal 2010 al 2014: si alzano sia la mediana sia la coda superiore, segnale di progressivo rafforzamento del mercato e di mesi con transazioni di importo sempre maggiore.
ggplot(data, aes(x = factor(month), y = sales, fill = city)) +
geom_col() +
labs(
x= "Mesi",
y= "Vendite",
title = "Numero di vendite mensili per singola città"
)+
theme_classic()
Le barre mensili stacked per città mostrano una stagionalità netta nei volumi di vendita: minimi a gennaio-febbraio, crescita fino al picco tra maggio e luglio, poi rallentamento in autunno. Nella composizione, Tyler pesa di più quasi ogni mese; Wichita Falls pesa meno.
ggplot(data, aes(x = factor(month), y = sales, fill = city)) +
geom_col(position = "fill") +
labs(
x= "Mesi",
y= "Vendite",
title = "Distribuzione percentuale vendite mensili per singola città")+
theme_classic()
La versione normalizzata del grafico a barre sovrapposte conferma che le quote relative tra città sono abbastanza stabili, con un lieve aumento della quota di Bryan-College station a metà anno e cioè nei mesi di picco.
plot_city_year <- data %>%
group_by(month, year, city) %>%
summarise(sales = sum(sales, na.rm = TRUE), .groups = "drop") %>%
mutate(
month = factor(month, levels = 1:12, labels = month.abb),
year = factor(year)
)
ggplot(plot_city_year, aes(x = year, y = sales, fill = city)) +
geom_col() +
facet_grid(~ month, switch = "x") +
labs(title = "Numero vendite mensili per singole città: barre affiancate per anno",
x = "Mese", y = "Vendite", fill = "Città") +
scale_x_discrete(drop = FALSE) +
theme_minimal() +
theme(
legend.position = "bottom",
strip.placement = "outside",
strip.background = element_blank(),
axis.text.x = element_text(angle = 90, hjust = 0.5, vjust = 0.5))
Il grafico del numero di vendite mensili, a barre affiancate per singolo anno, mostra che nel 2013-2014 i livelli sono superiori al 2010-2011 praticamente in tutti i mesi, quindi la crescita è diffusa e non episodica.Questo grafico ci conferma il trend di crescita del numero delle vendite e la stagionalità della serie storica in esame. Tuttavia, con uno sguardo più attento, Wichita Falls sembra essere molto stabile nel volume di vendita, per le altre città è difficile dare un parere da questo grafico. Tyler conferma un trend crescente.
ggplot(data, aes(x = date, y = sales, color = city)) +
geom_line() +
labs(title = "Serie storica vendite per singola città", x = "Data", y = "Vendite")+
theme_classic()
Il line chart delle vendite nel tempo ribadisce stagionalità e trend: picchi ricorrenti a metà anno, volatilità maggiore per Bryan-College Station e Tyler, livelli strutturalmente più bassi per Wichita Falls che in realtà non cresce mai veramente nel trend. Complessivamente, mercato in espansione con forte componente stagionale.
Il mercato osservato mostra prezzi mediani concentrati soprattutto
tra 120 –160 mila $, con un picco intorno a 140–160 mila: la forma è
poco dispersa e lievemente sbilanciata, in linea con la bassa
variabilità dei prezzi (CV ≈ 17%). In generale il mercato è stabile
rispetto ai prezzi mediani. La divisone in classi di prezzo e l’Indice
di Gini normalizzato ≈ 0,90 indicano elevata eterogeneità tra classi,
quindi nessuna fascia “monopolizza” le osservazioni: il mix di prezzo è
ampio ma non polarizzato.
Sui driver di volume emerge invece forte volatilità e coda destra: il
volume è la variabile più instabile (CV più alto) e anche la più
asimmetrica (γ₁ positivo), segnale di mesi e città con picchi
eccezionali di transato che spingono la distribuzione verso l’alto.
Questo rende i volumi più difficili da prevedere e consiglia metriche
robuste e attenzione agli outlier.
L’efficacia degli annunci (sales/listings) è generalmente bassa e
concentrata, con una lunga coda destra: tipicamente servono molti
annunci per generare una vendita, ma in qualche mese e città la
conversione sale nettamente. Operativamente conviene analizzare quali
caratteristiche (stagione, città, livello di prezzo) coincidono con i
picchi di efficacia per replicarli.
Dalla lettura congiunta dei grafici temporali si nota stagionalità
marcata delle vendite (primavera-estate più forte) e una progressiva
crescita nei totali più recenti: pianificare campagne, pricing dinamico
e gestione dell’inventario con anticipo sui mesi caldi può migliorare il
rapporto listings/sales.
Le probabilità calcolate sui label confermano la struttura del dataset: una riga su quattro è Beaumont (4 città equiponderate), luglio vale ~8,3% (12 mesi equiprobabili) e un mese specifico come dicembre 2012 pesa ~1,7% (12×5 anni). Queste grandezze sono utili come baseline per confronti successivi.
Dopo una prima analisi complessiva si uò passare all’analisi per singola città. Dai box/violin si osserva che Bryan-College Station è l’area con i prezzi più alti, seguita da Tyler; Beaumont si colloca su livelli intermedi, mentre Wichita Falls risulta nettamente più economica. Queste differenze strutturali suggeriscono strategie di pricing e allocazione del budget marketing differenziate per città.
Bryan-College Station
Posizionamento premium: pricing alto e cura massima della qualità degli
annunci (staging, video/virtual tour), campagne performance orientate a
lead di fascia alta; meglio pochi lead qualificati che volume, è
sicuramente la città su cui puntare. L’efficacia degli annunci ha un
trend crescente nel corso degli anni. Si consiglia una forte spinta sui
mesi caldi nei quali il tasso di conversione degli annunci in vendita
sale vertiginosamente.
Tyler
Grossi volumi di vendita e mid-high pricing, qui si consiglia un
discorso quantitativo più che qualitativo. La distribuzione dei prezzi è
stabile con pochissimi outliers, è importante quindi mantenere un
pricing dinamico vicino ai comparables poichè il mercato non accetta
prezzi lontiano dal prezzo mediano. Anche qui si consiglia spinta su
mesi caldi nei quali il prezzo medio mensile sale a livello di
Bryan-College Station.
Beaumont
Il prezzo medio degli immobili è rimasto invariato negli anni nonostante
un tasso di efficacia annuo in aumento. I volumi di vendita sono molto
stabili, non ci sono valori eccezionali quindi non c’è da aspettarsi
exploit. Anche qui nei mesi estivi c’è da aspettarsi un aumento dei
volumi di vendita, tuttavia i picchi di questi volumi non sono per
niente paragonabili a quelli di Bryan-College Station e Tyler quindi. Si
consiglia di concentrare il marketing su questi mesi ma con una spesa
ridotta rispetto alle prime due città.
Wichita Falls
È il mercato meno appetibile delle 4 città in esame. Il prezzo
medio degli immobili è costante dal 2010 al 2014 e il tasso di efficacia
degli annunci ha un trend ribassista nell’ultimo anno. Prezzo mediano e
volumi in generale sono molto bassi. Quantità più che qualità. C’è una
sensibile differenza tra il tasso di efficacia degli annunci tra i mesi
di Febbraio e Marzo, è questo il momento in cui inserire gli annunci
migliori!