domenica 16 ottobre 2011

HATTRICK - Bonus Fedeltà

Dall'editoriale del 3 ottobre 2011 le cose sono piuttosto chiare, vengono introdotti 2 distinti bonus:

1) BONUS 1 - Bonus fedeltà dei giocatori

"Un giocatore sarà più attaccato e fedele alla vostra squadra per ogni giorno consecutivo che trascorrerà con essa.
La fedeltà si guadagna più velocemente all’inizio, quindi sempre più lentamente col passare del tempo. La massima fedeltà è raggiunta dopo 3 stagioni, ma sarà a metà livello dopo 12 settimane.
Bonus massimo: +1 livello di abilità in ogni abilità (Resistenza esclusa), dopo 3 stagioni (336 giorni)"

Allora il bonus per la presenza dei giocatori nel team, chiamiamolo BONUS1
* è basato sui giorni
* è a metà livello (+0.5 di abilità in ogni skill) dopo 12*7=84 giorni e al massimo (+1 di abilità in ogni skill) dopo 336 giorni

come suggeritomi da GM-Wiles la formula sottostante è molto semplice:
che infatti vale 0,5 se i giorni sono 84 (84/336=1/4 la cui radice è 1/2)
e 1 se i giorni sono 336
Altri punti interessanti sono 21 (3 settimane) per cui la formula vale 0,25 e 189 (27 settimane, poco più di 1 stagione e mezza) per cui vale 0,75
NOTA: Per giorni maggiori di 336 vale sempre 1, quindi la formula completa e corretta sarebbe min(1;RADQ(GIORNI/336)).

Il grafico è questo

Il bonus sarà indicato nel sito con un livello da 1 a 20 (da "disastroso" a "divino"), ma il valore esatto dovrebbe essere ricavabile dalla formula esposta sopra.



2) BONUS 2 - Bonus Squadra Madre "I giocatori che giocano per la loro squadra madre, come i giocatori delle vostre giovanili, e che l'hanno fatto per tutta la loro carriera danno qualcosa in più sul campo"

I bonus sono cumulabili, quindi

BONUS TOTALE = Bonus 1 + Bonus 2

Naturalmente un giocatore non uscito dalle giovanili (e rimasto continuamente nel team) non gode del Bonus 2.





IMPATTO DEI BONUS

Ora faccio un passo in più e cerco di capire come vari il beneficio ottenuto ruolo per ruolo.
Supponiamo per semplicità di avere un giocatore che sia uscito dalle giovanili e che sia ora in prima squadra (bonus totale= bonus 1+bonus 2=1,5) , che sia straordinario (10) in primaria e accettabile (6) nelle secondarie rilevanti per il ruolo.
Avremo quindi:
  • Portiere 10/6 in parate/difesa
  • Difensore Centrale e Terzino 10/6/6 in difesa/regia/cross
  • Centrocampista centrale 10/6/6/6 in regia/passaggi/difesa/cross
  • Ala 10/6/6/6 in cross/regia/passaggi/difesa
  • Trequartista (attaccante difensivo tecnico) 10/6/6/6 in passaggi/regia/attacco/cross (questo profilo è il più discutibile, lo so, ma tengo così per coerenza con gli altri ruoli)
  • Attaccante 10/6/6 in attacco/passaggi/cross
Per il giocatore che gode di un bonus massimo il valore in primaria diventerà di 11.5 e quello in secondaria di 7.5.
Mi appoggio al lavoro fatto a febbraio
http://acandio.blogspot.com/2011/02/hattrick-i-contributi-dei-giocatori-in.html
per valutare l'impatto dei bonus.

Comincio dal reparto difensivo


vedete i contributi reparto per reparto di tutte le possibili disposizioni.
Il primo gruppo di colonne è relativo ai "senza bonus" e vale per i giocatori che non godono né del bonus 1 né del bonus 2 (acquistati quindi da altri team da 0 giorni) e riporta i valori di apporto del giocatore ai livelli delle valutazioni nelle diverse zone del campo.
Il secondo gruppo di colenne sono sempre gli apporti nelle varie zone, per chi gode del bonus massimo di 1,5 punti per skill (cresciuti nel team).
Il terzo gruppo di colonne sono le differenze tra gli apporti (quindi i guadagni per chi gode del bonus), con l'ultima colonna che indica il totale dato dalla somma delle differenze.

* I Portieri sono quelli che godono più di tutti del bonus, il guadagno, suddiviso in più zone del campo, rispetto a un portiere senza bonus è di 1.16 livelli.
Questo guadagno è quasi equamente distribuito tra i tre reparti di difesa: apportano quasi 0,4 (0.398 nella tabella) livelli in più alle valutazioni delle difese laterali del team e poco meno (0.366) alla valutazione della difesa centrale.

* I Difensori Centrali hanno un guadagno medio totale di poco più di mezzo livello.
Questo guadagno, se considero il caso di due difensori centrali, va in minima parte al centrocampo. Quelli normal godono di un bonus di poco più di un quarto di livello per la difesa centrale (+0.268) e di poco meno per la difesa laterale più vicina (+0.222). Il guadagno aumenta per i difensori centrali verso l'ala ("tw") che apportano 0.326 in più alla difesa laterale verso cui spingono (naturalmente godono meno nella difesa centrale, dove il guadagno si abbassa a 0.200)

* I Terzini guadagnano più dei difensori centrali, e non è una sorpresa, dato che il bonus incide maggiormente nelle secondarie del giocatore e i terzini sono più legati alle secondarie. Il guadagno medio totale è di 0.70 livelli.
Il guadagno dato dal bonus per il terzino normal è soprattutto in difesa laterale (quasi mezzo livello in più, con 0.402), di circa la metà (0.193 livelli) in attacco laterale, ancora minore in difesa centrale (0.125 livelli)
Se il terzino è difensivo rispetto al normal il guadagno è di poco superiore in difesa laterale (0.426), ma molto inferiore in attacco laterale.


Continuo analizzando il reparto di centrocampo.



* I Centrocampisti che godono del bonus apportano complessivamente circa mezzo livello in più alle valutazioni del team. Questo mezzo livello di apporto maggiore va per poco più di un terzo all'aumento nella valutazione di centrocampo, per un terzo all'aumento nei contributi alla difesa e per poco meno di un terzo all'aumento nei contributi all'attacco.
Vediamo i numeri per un caso tipoco: centrocampista normal messo a sinistra, in centrocampo a 3 centrocampisti. Il giocatore che gode del bonus apporta 0.171 livelli in più alla valutazione di centrocampo, 0.086 in più alla difesa centrale e 0.069 in più alla difesa laterale sinistra (totale di 0.155 in più alle due difese); in attacco apporta 0.070 in più all'attacco centrale e 0.069 in più all'attacco laterale sinistro (totale di 0.140 in più ai due attacchi di competenza).

* Le Ali, essendo multiskillose, godono parecchio del bonus, per loro il guadagno medio totale è di 0.71 livelli.
Questo guadagno va in misura via via maggiore all'attacco centrale (0.03 livelli), alla difesa centrale (0.05 livelli), al centrocampo (0.10 livelli), alla difesa laterale di competenza (0.15 livelli in media), ma soprattutto all'attacco laterale (quasi +0.40 livelli in media).
Le differenze si spostano naturalmente a seconda dell'ordine individuale assegnato all'ala, per cui l'ala offensiva guadagnerà ancora di più in attacco laterale ecc...



Ecco il reparto offensivo


* Gli Attaccanti, guadagnano anch'essi mediamente 0.70 livelli di apporto complessivo grazie al bonus.
Se considero un attaccante sinistro in un attacco a due punte vedo come per un normal il guadagno del bonus sia di 0.343 livelli all'attacco centrale e di 0.194 livelli a ogni attacco laterale, il totale del guadagno è di 0.73 livelli.
Un attaccante verso l'ala guadagna 0.356 di livello nell'attacco laterale, ma solo 0.218 nell'attacco centrale e 0.040 nell'altro laterale, per un guadagno complessivo di soli 0.61 livelli.
Per un trequartista (il difensivo tecnico) il guadagno è di 0.296 livelli all'attacco centrale e di 0.210 per ogni attacco laterale (oltre che a un 0.082 al centrocampo), per un totale complessivo di 0.80 di livelli.
Risulta quindi dai calcoli come (dati i valori di partenza) sia il trequartista il gicoatore di movimento a godere maggiormente di questi bonus. E non è una sorpresa, essendo per definizione il trequartista un giocatore multiskilloso e incidendo % i bonus in modo maggiore nelle secondarie (+1.5 sul valore 6 della secondaria è un +25%, mentre sul 10 della primaria è solo un +15%).


Andreac

sabato 8 ottobre 2011

HATTRICK - Una misura (approssimata) del Random nella Serie



Tolgo un po' di polvere e posto qualcosa di nuovo.
Oddio, non proprio nuovissimo, dato che già n stagioni fa avevo fatto qualcosa di simile, ma l'avevo postato nei CS del mio team e quindi era rimasto con una visibilità assai limitata.

Quello che vado a proporre è una misura, seppur approssimata come indicato nel titolo, del "Random" all'interno di una Serie.
"Random" viene qui inteso come devianza dai risultati ottenuti rispetto a quelli attesi, mostrati a chi ha installato Foxtrick nella barra in basso, quella all'interno della "Analisi del Match di HTMS" (http://www.fantamondi.it/HTMS/index.php?lang=it).
Come specificato in quel sito "La barra invece mostra le percentuali di vittoria, pareggio, sconfitta. Questi valori provengono da un confronto statistico sull'analisi diretta dei dati e non da una predizione fatta tramite il modello matematico. Ovvero, ciò che è stato fatto è stato di raggruppare tutte le partite presenti nel DB in base ai rapporti tra centrocampo, attacco e difesa. Si è quindi passati a catalogare tutte le partite con gli stessi rapporti e a contare le percentuali di vittoria, sconfitta, pareggio (al netto degli SE) effettivamente ottenute. A questo scopo ovviamente un 8-0 conta una vittoria esattamente come un 2-1. Queste stesse percentuali sono quindi mostrate sulla barra e non sono quindi un lavoro di predizione, ma un resoconto di quello che è effettivamente successo."
E' un utile riferimento pertanto e non una misura assoluta, per questo parlo di misura "approssimata".

Prima di passare ai numeri introduco il concetto di "Valore Atteso" (o "Speranza Matematica"), che non è niente di complicato, provo a spiegarlo con un esempio concreto: giocare a testa o croce.
Gioco a testa o croce e punto 1 euro, vincendo 2 euro se azzecco o nulla se perdo.
La probabilità è del 50%.
Se gioco 1.000 volte mi aspetto di vincere nel 50% dei casi e di perdere nell'altro 50%.
Quindi 500 volte vinco 2 euro e 500 volte perdo, per un totale di 500*2€=1.000€
Quindi posso dire che a ogni giocata ho una vincita attesa di 1.000€/1.000giocate=1€ a giocata.
Chiaramente non ci sarà nessuna gocata in cui vincerò "1€", ma vincendo 2€ la metà delle volte e 0€ nell'altra metà, allora "in media" vincerò 1€ a ogni giocata.
Tale valore (il "valore atteso") è ottenuto moltiplicando gli esiti della giocata per le loro probabilità, cioè
2€ * 50% + 0€ * 50% = 2*0,5 + 0 = 1

In Hattrick chiaramente dovrò moltiplicare i punti dati dai risultati di 1, x, 2 per le loro probabilità che ricavo dalla barra citata sopra.
Per cui se in una partita ho il 60% di vittoria, il 25% di pareggio e il 15% di sconfitta significa che:
3punti*60% + 1punto*25% + 0 punti*15% = 1,8 + 0,25 + 0 = 2,05
e 2,05 sono i punti attesi da quella partita.
Come sopra, non ci sarà mai una partita in cui otterrò 2,05 punti, ma se la gioco 1.000 volte, allora in media 2,05 sarà il valore di punti ottenuto.

Ora non resta che da confrontare il valore vero ottenuto sul campo con quello atteso.
* se ho vinto allora ho ottenuto 3 punti, cioè sono stato leggermente fortunato e ho ottenuto 3-2,05=0.95 punti in più di quelli attesi
* se ho pareggiato allora ho ottenuto 1 punto, cioè sono stato leggermente sfortunato e ho ottenuto 1-2,05=-1,05 punti in meno di quelli attesi
* se ho perso allora ho ottenuto 0 punti, cioè sono stato molto sfortunato e ho ottenuto 0-2.05=-2,05 punti in meno di quelli attesi

Quindi il valore ottenuto con
PUNTI OTTENUTI SUL CAMPO - VALORE ATTESO
è una misura (seppur approssimata come detto) della fortuna (se positivo) o della sfortuna (se negativo) che si è avuto nella singola partita.
Sommando partita per partita e squadra per squadra si ottiene una misura di quali siano stati approssimativamente i team più fortunati e quelli più sfortunati.

ATTENZIONE: questo calcolo vede solo la differenza tra "valori in campo" e "risultato ottenuto", vi prego di tener presente che i "valori in campo" sono solo DOPO che si sono realizzati tutti gli eventi della partita. Ad es. se a un team si sono rotti 4 giocatori e sono entrati 4 riserve di valore basso, il calcolo sopra terrà conto solo del confronto tra i valori (bassi) e il risultato, determinando fortuna/sfortuna in base a quello e non considerando la (grande) sfortuna di avere 4 infortunati nella stessa partita. Attenzione quindi: trattasi di una misura non solo approssimata, ma anche PARZIALE della fortuna/sfortuna avuta dai diversi team.





Posto per esempio il risultato di questa analisi nelle giocate questa stagione nella mia serie. In fondo allego il file excel che - se volete - può fare da guida per un'analogo studio nella vostra serie.

Allora comincio mostrando la 1a giornata.


Ho inserito le varie squadre e il risultato della partita. Il foglio excel provvede a calcolare i punti ottenuti dai team (verde per la vittoria, grigio per il pareggio, rosa per la sconfitta).
Dopodiché


inserisco nelle colonne dei risultati attesi i valori delle % che trovo nelle barre in basso, partita per partita. Il folgio provvede a calcolare i punti attesi per ogni team e a mostrare la differenza tra punti attesi e punti ottenuti.
Un valore negativo (in rosso sempre più marcato più il valore è negativo) significa che i punti ottenuti sono stati meno degli attesi, per cui la partita è stata sfortunata, un valore positivo (in verde) il contrario.
Così nella prima giornata ero stato io il più fortunato (Hellas VB), portando a casa 1.84 punti più di quanto atteso, fortunati anche SambaReggae e AC Bresaola che portano a casa i 3 punti in partite non del tutto scontate. Differenza nulla per Atletic Birimbao che vince fuori casa contro il team bottizzato (Fear of starvation), vittoria del tutto attesa.
Procedo così dunque giornata per giornata


Inserito il tutto il foglio excel provvede a raccogliere e riordinare tutti i dati nel foglio "FOGLIO APPOGGIO (AUTO)" a calcolare le somme dei valori in "Punti Ottenuti (AUTO)" e "Punti Attesi (AUTO)" e mi presenta i risultati nel foglio "RISULTATO"


Da cui risulta che il team più sfortunato è stato Atletic Birimbao, che ha lasciato per strada quasi 3 punti e mezzo. Sfortunati anche SambaReggae (-2.26) e Seportivo Scarpasciolta (-1.80), neutro il team bottizzato, mentre sempre più fortunati S.C.A. Porto San Giorgio (+0.83), AC Bresaola (+0.98), Hellas VB (+1.48) e affittinelsalento (+1.84 punti).
Fortuna e sfortuna quindi non si compensano in un campionato così corto (solo 14 partite).

Ma tutto questo come ha inciso nella classifica?
E' presto detto (attenzione, questo calcolo non viene fatto in automatico, occorre fare copincolla e poi riordinare i valori)

Vedete a sinistra la classifica effettiva e a destra quella "Equa" coi punti pari ai punti attesi.
Primo S.C.A. Porto San Giorgio in tutte e due, fortuna/sfortuna non hanno inciso sul primo posto. Al secondo posto invece sarebbe stato secondo i punti attesi "Seportivo Scarpasciolta", che per una serie di partite sfortunate scivola al 4° posto reale, lasciando campo a Hellas VB e AC Bresaola. La squadra più fortunata di tutte (affittinelsalento) supera quella più sfortunata (Atletic Birimbao) cosa che genera uno scambio tra 5° e 6° posto.
Tirando le somme?
Ai playoff va il team che se lo merita, S.C.A. Porto San Giorgio, ai playout le due che sarebbero dovute andare (l'inversione tra 5° e 6° posto non cambia nulla) e anche le retrocesse direttamente sono quelle giuste.
Fortuna e sfortuna (pur in questa accezione APPROSSIMATIVA e PARZIALE, lo ricordo) alla fine della fiera non hanno inciso nelle cose che contano. Concludo col miglior in bocca al lupo per i miei cogironisti, che la dea bendata sia con voi nei decisivi spareggi!

Premete QUI per scaricare il file excel.


Andreac

giovedì 14 aprile 2011

HATTRICK - Ricerca DAC sui Calci Piazzati Indiretti







A oltre un anno dalla pubblicazione nel sito DAC, http://croack.altervista.org/it/ric-cp-ind, posto anche qui i risultati di una ricerca svolta in DAC e poi elaborata da me sui CP indiretti.

Grazie al lavoro di raccolta dei dati svolto in DAC coi contributi preziosi di Artic, gigietto, ggangus e molti altri abbiamo a disposizione circa 350 partite con cui provare a stimare come il motore di gioco calcoli la valutazione in CP indiretti, sia in attacco che in difesa.




1) ATTACCO

Dal manuale

L'efficienza della squadra che attacca è influenzata dalla
• media della skill calci piazzati e dalla

• media della skill attacco dei giocatori di movimento.

• In aggiunta, il livello di calci piazzati dello specialista darà un impatto aggiuntivo.


Quindi abbiamo un valore della Valutazione di attacco che dipende chiaramente da tre parametri ben precisi. Ho proceduto quindi alla raccolta dei dati postati, alla loro ripulitura e, grazie al contributo di charlie84 (anche lui armato di grande pazienza), ho ottenuto un file col quale provare a stimare i coefficienti β dei parametri mCP (media calci piazzati), mAtt (media in attacco) e tirCP (skill CP del tiratore).

VAtt=β0+β1*mAtt +β2* mCP+ β3*tirCP

Per quanto riguarda le valutazioni ho posto “X molto basso” in mezzo al suo segmento di valore e cioè a X,125, idem per “X basso” a X,375, “X alto” a X,625 e “X molto alto” a X,875

Poi ho proceduto modificando le medie delle skill, dato che non conosciamo i decimali è prudente anche qui porsi in mezzo e sostituire le medie senza decimali mAtt con mAtt+0.5

A questo punto possiamo ipotizzare che la funzione che stiamo stimando abbia o no intercetta, se non ce l’ha sarà nella forma

VAtt=β1*mAtt +β2* mCP+ β3*tirCP

E la regressione mi dà questi valori
β1=0.4796 con sqm=0.0142
β2=0.2930 con sqm=0.0177
β3=0.0919 con sqm=0.006

Rquadro pari a 0.9938 (troppa grazia)

Cioè il valore di attacco in CP indiretti è pari al
48% della media della skill attacco + 29.3% della media della skill calci piazzati + il 9% della skill CP del tiratore

Se ipotizziamo che vi sia una intercetta e la funzione sia

VAtt=β0+β1*mAtt +β2* mCP+ β3*tirCP

Allora otteniamo
β0=-0,1442 con sqm=0,1425
β1=0,5013 con sqm=0,0257
β2=0,2998 con sqm=0,0189
β3=0,0908 con sqm=0.006

Rquadro pari a 0.8744

Qui mi puzza quello sqm altissimo dell’intercetta che è praticamente pari ad essa in valore assoluto… data la scarsezza dei dati è comunque notevole la vicinanza dei β a dei valori che sembrano chiari e che mi sembrano del tutto ragionevoli per quanto finora visto e cioè mi sento di ipotizzare β0=0, β1=0.50, β2=0.30 e β3=0.09.

La ricetta per la parte di attacco quindi prevede, secondo me,
il 50% della media di attacco +
il 30% della media di CP +
il 9% della skill CP del tiratore

VAtt = 0.50*mAtt + 0.30*mCP+0.09*tirCP

provo a tradurlo in valori più concreti:
per fare 1 livello in più in attacco in CP indiretti (cioé per passare da insuff molto basso a accettabile molto basso) servono
  • +2 nella media in attacco dei giocatori di movimento oppure
  • +3,33 nella media in cp dei giocatori di movimento oppure
  • +11 nella skill cp del tiratore

questo un grafico a dispersione delle stime rispetto ai valori reali:






2) DIFESA

Nel manuale c'è una nuova formulazione

Per il calcolo della difesa vengono usati (in ordine d'importanza) • la media dell'abilità Difesa di tutti i giocatori (ad eccezione del portiere), • la loro media in calci piazzati, e le • skill parate e • calci piazzati del portiere che deve parare.

Quindi il valore della Valutazione di difesa in CP indiretti dipende da 4 parametri ben precisi.

Ho proceduto anche qui alla raccolta dei dati postati, alla loro ripulitura e, grazie al contributo di JoJo8, ho ottenuto un file col quale provare a stimare i coefficienti β dei parametri mCP (media calci piazzati dei giocatori di movimento), mDIF (media in difesa dei giocatori di movimento), gkCP (skill CP del portiere), gkPAR (skill parate del portiere)

Tralasciando l’ipotesi di intercetta perché abbiamo visto che non è presente nel caso di attacco e non avrebbe senso vi fosse in quello di difesa, la forma funzionale dovrebbe persumibilmente essere

VDif=β1*mDIF +β2* mCP+ β3*gkCP+ β4*gkPAR

Per quanto riguarda le valutazioni anche qui ho posto “X molto basso” in mezzo al suo segmento di valore (tra 0 e 0,25) e cioè a X,125, idem per “X basso” a X,375, “X alto” a X,625 e “X molto alto” a X,875

Poi ho proceduto modificando le medie delle skill, dato che non conosciamo i decimali è prudente anche qui porsi in mezzo e sostituire le medie senza decimali mDIF e mCP con (mDIF+0.5) e (mCP+0.5), idem per CP e Par del portiere.

Siamo quindi, dopo tanto lavoro, pronti per la regressione che dà questi valori:


β1=0.3809 con sqm=0.0109 per la mDIF
β2=0.3122 con sqm=0.0154 per la mCP
β3=0.0981 con sqm=0.006 per la gkCP
β4=0.0814 con sqm=0.006 per la gkPAR

Rquadro pari a 0.9952


Cioè il valore di difesa in CP indiretti è pari al

38.1% +/- 1% della media della skill difesa +
31.2% +/- 1.5% della media della skill calci piazzati +
9.8% +/- 0.6% della skill CP del portiere +
8.1% +/- 0.6% della skill parate del portiere

Questo un grafico degli scostamenti delle stime rispetto ai valori reali (indicate con delta1)


dato che le osservazioni sono ordinate in ordine decrescente (dalla valutazione di difesa più alta a quella più bassa) noto che la stima tende un po’ a sottostimare i valori elevati e sovrastimare quelli bassi


Allarghiamo il quadro e consideriamo quanto avevamo trovato per attacco: 50% mAtt + 30% mCP + 9% tirCP

Qui la funzione parrebbe essere

38% mDIF + 31% mCP + 10% gkCP + 8% gkPAR.


Vediamo che i valori di mCP sono molto simili tra attacco e difesa... se dovessimo ipotizzare una simmetria potremmo immaginare un 30% per la mCP che sarebbe anche dentro al range dello sqm (31.2 +/- 1.5%), e 40% non è troppo lontano dal limite massimo di mDIF+sqm che sarebbe 39.2%. Ci vorrebbero probabilmente ulteriori dati per confermare queste impressioni, per ora prudenzialmente teniamo il 38%, anche se non ci sono grandi conseguenze se tenete a mente una sua versione approssimata

VDif = 40% mDIF + 30% mCP + 10% gkCP + 8% gkPAR


Osservo infine che 10% e 8% sono prossimi al 9% della skill CP del tiratore nella valutazione di attacco.

Anche qui un esempio concreto: per avere 1 livello in più di difesa in CP indiretti serve uno dei seguenti elementi
  • 2.6 punti in più nella media in difesa oppure
  • 3.2 punti in più nella media in CP oppure
  • 10 livelli in più nella skill CP del portiere oppure
  • 12.5 livelli in più nella skill parate del portiere



****

RIASSUNTO FINALE

VAtt in CP indiretti = 50% mAtt + 30% mCP + 9% tirCP

VDif in CP indiretti = 40% mDif + 30% mCP + 10% gkCP + 8% gkPAR

sabato 9 aprile 2011

HATTRICK - Le Tasse sulla Vendita







Scrivo qualche riga sui costi di trasferimento. E' tutto spiegato bene nel capitolo 17 del manuale "Trasferimenti" e nell'appendice 4 "Costi di Trasferimento", qui posto qualche grafico e cerco di aggiungere qualche nota in più.

Quando si vende un giocatore si subisce una tassazione sul prezzo di vendita che è data dalla Somma di 3 tasse diverse:


1) Alla SQUADRA DI ORIGINE del giocatore va sempre il 2% del prezzo di vendita. Chiamiamola "Team A"


2) Al FONDO per il PRECEDENTE PROPRIETARIO va sempre il 3% del prezzo di vendita. Attenzione: il 3% va al Fondo, non al precedente proprietario. Tale precedente proprietario riceve infatti un valore variabile dallo 0% al 4%, commisurato al numero di partite che il giocatore ha giocato nel suo team.

Nel dettaglio, tale valore è


Ripeto: chi vende non si deve preoccupare di questi valori, chi vende viene tassato del 3% fisso e lo versa al Fondo. Sarà il Fondo poi ad andare a vedere quante partite il giocatore ha giocato col precedente proprietario e versargli la quota corretta, il 3% se ha giocato un numero di partite tra 10 e 19 e % minori o maggiori se minore o maggiore è stato il numero di partite giocate con quel team.



3) All'AGENTE va un ammontare variabile: più il giocatore è rimasto in un team, minore è tale ammontare

questo un grafico in base al numero di giorni:

Tali valori vengono calcolati al momento della messa in vendita del giocatore e non in quello dell'effettiva vendita dello stesso.



Dal punto di vista di chi vende quindi ci sono 2 tasse fisse, il 2% alla squadra di origine e il 3% al Fondo per il team precedente e una variabile, le spettanze per l'agente, che variano dal 2% al 12%. Per cui le tasse totali possono variare da un minimo di 2%+3%+2%=7% a un massimo di 2%+3%+12%=17%




Faccio ora un esempio numerico per chiarire i vari passaggi:

Il team A promuove un suo giocatore, lo fa giocare 5 partite in prima squadra e poi lo mette in vendita il 1 gennaio 2011. Il 4 gennaio il team B lo compra a 100.000€.
Al team A vengono addebitati
1) nessun 2% per il team di origine, in quanto è il team A stesso il team di origine
2) il 3% al fondo per il precedente proprietario, pari a 3.000€
3) il 2% all'Agente, pari a 2.000€
per un totale del 5%, cioè 5.000€.
Non ci sono spettanze per precedenti proprietari.



Il giocatore poi gioca 8 partite nel team B, che lo mette in vendita il 28 febbraio 2011.
Sono così trascorsi 55 giorni (conteggiando dal 4 gennaio, data di acquisto)
Dopo 3 giorni scade l'asta e il team C si aggiudica il giocatore a 180.000€
Al team B viene addebitato
1) il 2% per il team di origine pari a 3.600€
2) il 3% al fondo per il precedente proprietario, pari a 5.400€
3) a 55 giorni di presenza nel team corrisponde un addebito del 4.65% per l'agente, pari a 8.370
per un totale di 17.370€, pari al 9.65% del prezzo di vendita
Il team B riceve quindi dalla vendita 162.630€

Il team A riceve
1) il 2% come squadra di origine, pari a 3.600€
2) il giocatore aveva giocato 5 partite nel team, pertanto al team spetta il 2% come precedente proprietario, pari a altri 3.600€





come vedete in questo caso al "Fondo per il precedente proprietario" restano in cassa piu' soldi di quanti ne versi al precedente proprietario, dato che ne incassa 5.400 e ne versa 3.600. Succederà il contrario quando il giocatore avrà giocato almeno 20 partite nel team precedente.

Proseguiamo con l'esempio, il giocatore milita nel team C per un bel po' finché il 18 ottobre 2011, dopo 30 presenze, il team decide di metterlo in vendita. Sono trascorsi 229 giorni dalla data di acquisto.
Dopo 3 giorni scade l'asta e il team D si aggiudica il giocatore a 2.050.000€
Al team C viene addebitato
1) il 2% per il team di origine pari a 41.000€
2) il 3% al fondo per il precedente proprietario, pari a 61.500€
3) a 229 giorni di presenza nel team corrisponde un addebito del 2% per l'agente, pari a 41.000
per un totale di 143.500€, pari al 7% del prezzo di vendita
Il team C riceve quindi dalla vendita 1.906.500€

Il team A riceve
1) il 2% come squadra di origine, pari a 41.000€
2) non riceve niente come "precedente proprietario" in quanto nella vendita da C a D è B il precedente proprietario. I soldi come "precedente proprietario" si incassano una volta sola.

Il team B riceve
2) il giocatore aveva giocato 8 partite nel team, pertanto al team spetta il 2.5% come precedente proprietario, pari a 51.250€



Infine il team D è un trader, lo compra il 21, lo schiera il 22 e il 23 lo rimette in vendita dopo soli 2 giorni dall'acquisto. Dopo 3 giorni l'asta si conclude e il team E lo compra a 2.425.000€
Al team D viene addebitato
1) il 2% per il team di origine pari a 48.500€
2) il 3% al fondo per il precedente proprietario, pari a 72.750€
3) a 2 giorni di presenza nel team corrisponde un addebito del 9.95% per l'agente, pari a 241.288€ per un totale di 362.538€, pari al 14.95% del prezzo di vendita
Il team D riceve quindi dalla vendita 2.062.463€.
Il guadagno netto dell'operazione è quindi stato di solo 12.463€ (guadagno perché comunque non sto considerando gli stipendi, altrimenti l'operazione sarebbe stata chiaramente in perdita da un punto di vista economico, da un punto di vista sportivo magari no, in quanto questo giocatore potrebbe essere stato fondamentale per la partita del 22 ottobre)

Il team A riceve
1) il 2% come squadra di origine, pari a 48.500€

Il team C, unico precedente proprietario
2) riceve il 3.50% del trasferimento in quanto aveva disputato 30 partite nel team, pari a 84.875€. In questo caso il Fondo sborsa più di quanto riceva.


Analizzando team per team:

il team A riceve
95.000 netti dalla vendita
3.600+41.000+48.500=93.100 come squadra di origine
3.600 come precedente proprietario nella cessione da B a C
per un totale di 191.700€

il team B riceve
162.630 dalla vendita - 100.000 di acquisto = 62.630 dal trading
51.520 come precedente proprietario nella cessione da C a D
per un totale di 114.150€

il team C riceve
1.906.500 dalla vendita - 180.000 di acquisto = 1.726.500 dal trading
84.875 come precedente proprietario nella cessione da D a E
per un totale di 1.811.375€

il team D riceve
2.062.463 dalla vendita - 2.050.000 di acquisto = 12.463 dal trading
riceverà in futuro come precedente proprietario se e quando E cederà il giocatore, ma solo lo 0.25% della somma dato che con D il giocatore ha disputato solo 1 partita

domenica 27 marzo 2011

Revisione e Riorganizzazione del Blog

Questo Blog è nato un paio di anni fa per raccogliere alcuni studi che realizzavo per chiarire a me stesso come funzionavano alcuni punti del game.
Via via che si susseguivano le modifiche al gioco o si approfondivano alcuni argomenti questo spazio si è arricchito di materiale che ha interessato sempre più persone. Ho ricevuto molti ringraziamenti e apprezzamenti per quanto fatto, cosa di cui vi ringrazio a mia volta, che mi ha spinto ulteriormente allo studio e alla divulgazione.

Ora, la quantità di materiale presente richiede a questo punto una riorganizzazione, a tal fine ho sistemato l'indice
http://acandio.blogspot.com/2010/02/indice.html
ordinando gli articoli cronologicamente e per argomento.
Ho messo anche un bel rettangolone blu con scritto "INDICE del Blog" presente in ogni pagina a destra sotto i links, in modo che si possa risalire velocemente all'Indice che è in sostanza l'Home Page di questo sito.

Il materiale presenta però dei punti che richiedono una revisione: alcuni elementi ormai sono obsoleti, superati dalle modifiche introdotte nel game oppure migliorati da elementi scoperti in successive modifiche. Sono cose che sarebbero trascurabili se il blog fosse vissuto come "blog" con la sua naturale evoluzione cronologica.
Alcune mail ricevute - che mi sottolineano incongruenze tra un articolo e l'altro - mi suggeriscono invece che sia visto più come un sito e che, pertanto, serva un intervento che elimini tali differenze e che magari vada a sistemare alcuni punti che, scritti di getto magari con poco tempo a disposizione, possono essere migliorati.
Raggrupperò articoli, eliminerò parti inutili ecc...

Ho cominciato dall'articolo riguardante i SE Meteo, introducendo le nuove tabelle che seguono qui sotto, proseguirò - tempo permettendo - col resto.

Se avete punti che secondo voi necessitano di migliorie o di chiarimenti, segnalatemelo pure nei commenti a qs articolo, grazie.


*******


Queste le tabelle migliorate relative ai SE Meteo: tabella riassuntiva generale per TIPO di Specialità


e questa con le % di probabilità che si verifichi il SE Meteo


si possono anche riordinare gli eventi non per Specialità del Giocatore, ma per tipologia di tempo, per la serie "che tempo fa oggi? ah ok, allora chi può avere un SE?"





PS. dai un occhio all' INDICE del blog, ci sono parecchi articoli che ti potrebbero interessare.




Andreac (team ID 1730726 in Hattrick)

Creative Commons License
This opera by Andreac is licensed under a Creative Commons Attribuzione-Non commerciale 3.0 Unported License. Cioé questo lavoro può essere liberamente copiato, distribuito o modificato senza espressa autorizzazione dell'autore, a patto che l'autore sia chiaramente indicato e la pubblicazione non sia a fini commerciali.

lunedì 28 febbraio 2011

HATTRICK - Ricerca DAC sull'OverConfidence









Questo articolo è il frutto di una ricerca svolta nella Federazione "DAC - Crick & Croack", ricerca gestita da specialdoc, manager di Biotek Team, che l'ha curata per sei mesi. A tutti i confederati DAC che hanno partecipato un grande grande GRAZIE, a specialdoc il merito per tutto lo sbattimento e il ringraziamento per avermi lasciato la parti più divertente, l'elaborazione dei dati.

OverConfidence (abbreviata in "OC"), immagino sappiate già di cosa si tratti, ad ogni modo riprendo dal manuale, considerando anche le precisazioni comunicate nel messaggio del Notiziario del 2 agosto 2010.

Nel caso in cui incontri una squadra piazzata peggio di te e la tua fiducia è forte o maggiore, i tuoi giocatori possono sottovalutare gli avversari e giocare al di sotto delle loro normali possibilità.

Il rischio di sottovalutare l'avversario dipende dalla differenza di punti e di posizione tra le due squadre, dal tuo livello di fiducia e dall'atteggiamento della tua squadra per la partita. Più grande è la differenza tra le squadre, più alta è la fiducia, maggiore è il rischio.
Il solo modo per evitare completamente il rischio di sottovalutare l'avversario è quello di giocare "partita della stagione".

Nel caso in cui la tua squadra sottovaluti l'avversario, i punti di differenza, il livello della fiducia, l'atteggiamento della squadra e il fattore campo, sono i fattori che ne determinano l'entità. In base al risultato puoi però recuperare nell'intervallo tra i due tempi: recupero totale se in svantaggio, 2/3 se in pareggio, 1/3 se in vantaggio di un gol.

Notate che la sottovalutazione può accadere solo nelle partite di campionato, ma non nelle prime tre giornate.


Allora sembra piuttosto chiaro: la probabilità che vi sia OC è legata a 4 variabili:
  1. La Differenza di Posizione
  2. La Differenza di Punti
  3. Il Livello della Fiducia
  4. L'Atteggiamento (Mots, Normal, Pic)

mentre l'intensità dell'OC è legata a 4 variabili:
  1. La Differenza di Punti
  2. Il Livello della Fiducia
  3. L'Atteggiamento (Mots, Norma, Pic)
  4. Il fattore campo
a differenza delle 4 sopra manca la Differenza di Posizione e si aggiunge il fattore campo.



La ricerca DAC

In DAC è stato raccolto un campione di 90 partite. In 3 partite l'atteggiamento è stato "Partita della stagione" (Mots) e non c'è stata OC, come da manuale. Il campione effettivo quindi è di 87 partite. Vediamo come varia la presenza o meno di OC al variare delle 4 variabili:


1) La Differenza di Posizione

Questo valore può varia da 2 ad un massimo di 7 (nel caso in cui un team sia primo e l'altro ottavo), questi i dati:


vedete nella prima riga che nel caso di differenza di posizioni pari a 2 abbiamo 8 casi in cui non c'è OC e nessun caso di OC. Con una differenza di posizioni pari a 3 ci sono 5 casi senza OC e 2 casi di OC, 2 casi su 7 sono il 28.57%. E così via a crescere. Vedete che a valori di differenza di posizioni pari a 5, 6 o 7 l'OC sembra assestarsi attorno a valori sul 45/50%.

Se rappresentiamo in un grafico vediamo come la probabilità di OC cresca al crescere delle differenze di posizione.




2) La Differenza di Punti

Nel campione questo valore varia da 0 a 30.

Come ci aspettavamo la probabilità di OC cresce al crescere della differenza punti, fino a diventare quasi una certezza per differenze superiori ai 20 punti.

Gli ondeggiamenti della curva sono normali in un campione così ristretto, ma la linea di tendenza parla chiaro.


3) Il Livello della Fiducia

La fiducia può assumere i valori di 5 ("forte"), 6 ("magnifica"), 7 ("leggermente esagerata") e 8 ("esagerata").


per valori pari a 5 non c'è nessun OC, con fiducia pari a 6 il 28% dei casi, con fiducia pari a 7 circa il 47%, con fiducia pari a 8 poco meno del 40% (ma il dato può essere inficiato dai pochi dati disponibili con fiducia pari a 8).
Questo il grafico della probabilità di OC al variare del livello di Fiducia:




4) L'Atteggiamento (Mots, Normal, Pic)



Si passa dai 5 soli casi giocando normal (il 16%), al 46% dei casi giocando Pic.




Alla ricerca di una FORMULA

Ora quanto visto sopra ci dà un idea di massima di come vari la fiducia al variare delle singole variabili. Per stimare però quanto pesi una variabile rispetto all'altra occorre considerarle tutte insieme e fare un'analisi di regressione.
In sostanza si tratta di stimare i valori a, b, c, d ed e della seguente

Probabilità di OC = a*Diff.Posiz. + b*Diff.Punti + c*Fiducia + d*Atteggiamento + e

cercando di ottenere una formula della probabilità di OC, formula da prendere con le pinze data la ristrettezza del campione.
Anche l'uso del termine Probabilità è un po' improprio dato che il valore finale non sarà compreso tra 0 e 1, ma potrà anche valere un po' di più o di meno.

Vi salto i tecnicismi e salto alla conclusione dicendo che una stima di questo tipo non dava risultati attendibili. Allora ho provato a pensarci un po' e mi sono accorto che le variabili "Differenza di posizione" e "Differenza punti" non sono mutualmente indipendenti, ma sono correlate (maggiore la differenza punti, maggiore sarà la differenza di posizione dei due team in linea di massima), se non sono completamente arrugginito di queste cose un'analisi di regressione efficace richiede la mutua indipendenza delle variabili.

Ho provato ad escludere la "Differenza Punti", ma l'efficacia della stima (l'R-quadro per gli statistici) crollava, mentre togliendo la "Differenza di Posizione" si otteneva una formula decente.
Del resto la "Differenza di Posizione" non fa neppure parte delle 4 variabili che regolano l'intensità dell'OC (vedi sopra la citazione dal manuale), per cui escluderla dal calcolo della probabilità dell'OC non sembra un sacrificio insensato (tenendo anche conto come detto che parte dell'informazione è comunque implicita nella differenza punti).

Ponendo l'Atteggiamento pari a "1" se si gioca Normal e a "2" se si gioca Pic, la formula della probabilità di OC sembra poter essere:

Probabilità di OC = 0.04*Diff.Punti + 0,08*Fiducia + 0,16*Atteggiamento - 1

sembra anche facile da ricordare, i decimali infatti sono 4 per la Differenza Punti, 8 per la fiducia e 16 per l'Atteggiamento.

Come funziona questa formula sul campione? Presto detto
se è minore del 50% non c'è OC in 49 casi e c'è OC in 7 casi (di cui due appena sopra al limite, al 52%)
se è maggiore del 50% non c'è OC in 8 casi (di cui tre appena sotto al limite, al 48%) e sì OC in 23 casi

se la formula è maggiore del 70% non ho OC solo in 1 caso su 14 (pari al 7%)
se la formula è minore del 30% c'è OC solo in 3 casi su 41 (ancora pari al 7%)


Ecco in un grafico le 7 partite particolarmente fortunate in cui non c'è stata OC, pur con un valore della formula superiore al 50%, nel resto del campione non c'è stata OC, come previsto dal valore basso dato dalla formula.


Passando infine ai valori di Probabilità di OC calcolata per quelle partite nel campione che invece hanno avuto OC


vedete che sono solo 4 i casi sfortunati di OC prevista inferiore al 40% e invece realizzatasi. 4 i valori compresi tra 40% e 50% (di cui 3 al 48%) e altri 23 con probabilità superiore al 50% in cui poi l'OC si è concretizzata.



Le Cause dell'OC

Il fatto che i decimali per la differenza di punti siano 4, quelli per la fiducia 8 e quelli per l'atteggiamento 16 non significa che queste variabili siano nel medesimo ordine di importanza, dato che variano su scale diverse (da 0 a 30 la differenza punti, da 5 a 8 la fiducia e da 1 a 2 l'atteggiamento). Portando tutto sulla stessa scala e cioè sostituendo ai valori di fiducia il valore (Fiducia-5)*10 e all'Atteggiamento 0 se Normal e 30 se Pic, la formula diventa:

Probabilità di OC = 0.04*Diff.Punti + 0,0075*Fiducia(riscalata) + 0,005*Atteggiamento(riscalato) - 0.45

Insomma la Differenza Punti sembra pesare oltre 5 volte il valore della Fiducia e 8 volte il valore dell'Atteggiamento.
Quindi - e questo è importante - se troviamo OC in squadre che hanno piccato, non è tanto il Pic in sé a essere causa di Overconfidence, ma il fatto che il Pic viene fatto da squadre che hanno tanto vantaggio di punti sull'avversario.
Complessivamente l'OC dipende quindi per oltre il 75% dalla differenza punti, per il 14% dal livello di fiducia e per il 10% dall'Atteggiamento.
La metto in un grafico a Torta che forse resta più impressa:



APPENDICE

Questo il campione nel dettaglio:





PS. dai un occhio all' INDICE del blog, ci sono parecchi articoli che ti potrebbero interessare.




Andreac (team ID 1730726 in Hattrick)

Creative Commons License
This opera by Andreac is licensed under a Creative Commons Attribuzione-Non commerciale 3.0 Unported License. Cioé questo lavoro può essere liberamente copiato, distribuito o modificato senza espressa autorizzazione dell'autore, a patto che l'autore sia chiaramente indicato e la pubblicazione non sia a fini commerciali.

domenica 20 febbraio 2011

HATTRICK - Trading procedura di raccolta ed elaborazione dati






Dato che ho ricevuto numerose richieste al riguardo, mi accingo a spiegare passo passo la procedura utilizzata per elaborare i dati mostrati nell'articolo precedente

PARTE 1 - LA DIFFERENZA LORDA tra Venduto e Comprato

Naturalmente occorre andare nella pagina della "Storia dei Trasferimenti" del team che si vuole analizzare e si va a cercare la data finale del periodo che interessa, trovata la stessa selezionare i dati come indicato dalle frecce rosse, da prima della prima data alla stellina dell'ultimo giocatore nella pagina:


a questo punto un bel CTRL+C per copiare i dati.
Aprire "Blocco Note" e un CTRL+V per incollare i dati in blocco note

Aggiungi immagine
fatto questo torniamo in Hattrick, clicchiamo sulla pagina successiva della Storia dei Trasferimenti e selezioniamo tutti i dati (in questo caso dal 28/12 al 19/12)


naturalmente ancora CRTL+C per copiare tutti i dati, dopodiché ci riportiamo su Blocco Note e - IMPORTANTE - ci assicuriamo di cliccare invio in modo che il cursore si trovi all'inizio della riga successiva, come indicato dalla freccia rossa


in modo da non impapocchiare i dati.
Dopodiché potete cliccare su CTRL+V per incollare i dati.
Procedete così copiando da Hattrick e incollando in Blocco Note fino a quando risalite alla data di inizio del periodo che vi interessa.
Fatto questo e incollata l'ultima parte di dati in Blocco Note, andate su Modifica->Seleziona Tutto in modo che tutti i dati siano selezionati come da immagine


Ora aprite Excel (qui mostro con Excel 2007, ma la procedura è sostanzialmente la stessa anche in altre versioni del programma) e nella prima riga scrivete nella cella A1 "Data", nella B1 "Player/Giocatore", nella C1 "Azione", nella D1 "Squadra", nella E1 "Prezzo" e nelle successive "1" e "2" (vedere immagine successiva), dopodiché andate nella cella A2 e cliccate CTRL+V che vi incollerà tutti i dati copiati in precedenza


siamo a buon punto.
A questo punto cliccate su "C" in modo da selezionare tutta la colonna relativa alle azioni di compravendita


cliccate CTRL+C per copiare l'intera colonna e incollatela nella colonna "H", dopodiché fate lo stesso per la colonna "E" dei prezzi ed incollatela nella colonna "I" e vi troverete in questa situazione:


ora con la colonna "I" dei prezzi ancora selezionata, cliccate sull'icona in alto a destra "Trova e seleziona" e scegliete "Sostituisci" dal menu, vi si aprirà una maschera in cui inserirete nello spazio "Trova" un semplice spazio " " così:


dopodiché cliccate su "Sostituisci tutto" e se avete fatto tutto correttamente vi risponderà "sono state effettuate XXX sostituzioni" e la colonna I sarà ora costituita da numeri


A questo punto selezionate entrambe le colonne "H" e "I" e cliccate su "Inserisci" in alto a sinistra, vicino a "Home", cliccate sulla prima icona a sinistra "Tabella Pivot" e dal menu scegliete Tabella Pivot


dopo aver cliccato su "Tabella Pivot" e dato l'ok vi si aprirà una pagina così


ci siamo quasi: andate su "Azione" a destra e trascinatelo nel quadratino in basso a destra, quello con scritto "Etichette di riga" e trascinate invece "Prezzo" nel quadratino appena a destra del precedente, con scritto "Valori"


come vedete a sinistra è già apparso il totale di operazioni effettuate in acquisto e in vendita dato che in cella B3 c'è "Conteggio di PREZZO"
Doppio cliccate sulla stessa cella e si aprirà una maschera (se non lo prende andate in alto in "Impsotazioni campo")


scegliete somma e date ok e ottenete


finalmente la somma dei TOTALI dei valori dei giocatori comprati e venduti.



per i 2 o 3 che fossero interessati due righe anche su

PARTE 2 - Il Seasonal

Occorre estrarre dalla data che è nella forma "28-12-2010 (5/44)" il numero di settimane.
Per fare questo basta aggiungere una colonna ulteriore "K" e scrivere nella cella la formula
"SE(STRINGA.ESTRAI(A2;14;1)="/";STRINGA.ESTRAI(A2;13;1);STRINGA.ESTRAI(A2;13;2))"
dove A2 è la cella con "28-12-2010 (5/44)" e la formula restituirà "5"
La colonna "K" è adiacente a quella dei prezzi, basta selezionarle e fare una tabella pivot come mostrato sopra e avrete i dati di numero di scambi e totale di valori divisi per le settimane delle stagioni.

PARTE 3 - Le tipologie di giocatori

Selezionate tutti i dati dei giocatori e ordinateli per "Azione".
In una colonna a destra scrivete i valori delle classi di prezzo che volete considerare, ad esempio se volete dividere come ho fatto io per classi di 125.000€ dovete scrivere una colonna come la seguente, che termina al valore massimo che volete (in qs caso 7kk)

125000
250000
375000
500000
625000
750000
...
7000000

selezionate un numero di celle pari a quello delle classi di prezzo nella colonna subito a destra e inserite la formula "FREQUENZA(G2:G201;H6:H61)" dove G2 e G201 sono la prima e l'ultima cella coi prezzi dei giocatori comprati e H6 e H61 la prima e l'ultima cella delle classi di prezzo da considerare, cliccate CTRL+MAIUSC+INVIO e il gioco è fatto.


PS. dai un occhio all' INDICE del blog, ci sono parecchi articoli che ti potrebbero interessare.




Andreac (team ID 1730726 in Hattrick)

Creative Commons License
This opera by Andreac is licensed under a Creative Commons Attribuzione-Non commerciale 3.0 Unported License. Cioé questo lavoro può essere liberamente copiato, distribuito o modificato senza espressa autorizzazione dell'autore, a patto che l'autore sia chiaramente indicato e la pubblicazione non sia a fini commerciali.