I think I may have it
You need to do a couple of seperate measures to get there. I’ll show how I got to Fitness CTL first.
First you need Standard 42 Day Moving average which is this
TSS 42 Day Moving Average =
AVERAGEX(
DATESINPERIOD( Dates[Date],
LASTDATE( Dates[Date] ),
-42, DAY ),
[Total TSS] )
Then you need yesterdays 42 Day Moving Average which is this.
Yesterdays 42 Day Moving Average =
CALCULATE(
[TSS 42 Day Moving Average] ,
PREVIOUSDAY( Dates[Date] ))
You then need to calculate the 42 Day Weighting multiplier which is as I calculated above
(2/(42+1) = 0.0465
You can then calculate fitness using the following formula (I think)
Fitness (CTL) =
(0.0465*([Total TSS]-[Yesterdays 42 Day Moving Average])) + [Yesterdays 42 Day Moving Average]
To Fatigue you do something similar
TSS 7 Day Moving Average =
AVERAGEX(
DATESINPERIOD( Dates[Date],
LASTDATE( Dates[Date] ),
-7, DAY ),
[Total TSS] )
Yesterdays 7 Day Moving Average =
CALCULATE(
[TSS 7 Day Moving Average] ,
PREVIOUSDAY( Dates[Date] ))
Then
7 Day Weighting Multiplier
(2/(7+1) = 0.25
Then
Fatigue (ATL) =
(0.25*([Total TSS]-[Yesterdays 7 Day Moving Average])) + [Yesterdays 7 Day Moving Average]
Then to finally calculate form you need yesterdays Fitness and yesterdays fatigue
Yesterdays Fitness =
CALCULATE(
[Fitness (CTL)] ,
PREVIOUSDAY( Dates[Date] ))
Yesterdays Fatigue =
CALCULATE(
[Fatigue (ATL)] ,
PREVIOUSDAY( Dates[Date] ))
Which when subtracted from each other gives you todays Form
Form (TSB) =
CALCULATE([Yesterdays Fitness] - [Yesterdays Fatigue])
I feel like my numbers are right but when I put my TSS scores in My fitness appears high.
Let me know how you go and if you think I should make a change somewhere. I think a few people would be interested in calculating this so my donation to the group