This is the code, a bit rough one but that do the job 😉
defparam drawonlastbaronly=true
if barindex=200 then
ma3= Average[3](Close)
ma5= Average[5](Close)
ma10= Average[10](Close)
ma15= Average[15](Close)
ma30= Average[30](Close)
ma50= Average[50](Close)
ma100= Average[100](Close)
ma200= Average[200](Close)
endif
ExtMapBuffer3 = close - ma3
ExtMapBuffer5 = close - ma5
ExtMapBuffer10 = close - ma10
ExtMapBuffer15 = close - ma15
ExtMapBuffer30 = close - ma30
ExtMapBuffer50 = close - ma50
ExtMapBuffer100 = close - ma100
ExtMapBuffer200 = close - ma200
drawtext("●",barindex[8],extmapbuffer3,Dialog,Bold,10)
drawtext("●",barindex[7],extmapbuffer5,Dialog,Bold,10)
drawtext("●",barindex[6],extmapbuffer10,Dialog,Bold,10)
drawtext("●",barindex[5],extmapbuffer15,Dialog,Bold,10)
drawtext("●",barindex[4],extmapbuffer30,Dialog,Bold,10)
drawtext("●",barindex[3],extmapbuffer50,Dialog,Bold,10)
drawtext("●",barindex[2],extmapbuffer100,Dialog,Bold,10)
drawtext("●",barindex[1],extmapbuffer200,Dialog,Bold,10)
if day<>day[1] and month=currentmonth then
lowscale = ExtMapBuffer3
highscale = extmapbuffer200
endif
diff=abs(extmapbuffer3-extmapbuffer5)
drawtext("MA3",barindex[8],lowscale-diff,Dialog,Bold,10) coloured(200,100,0)
drawtext("MA5",barindex[7],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
drawtext("MA10",barindex[6],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
drawtext("MA15",barindex[5],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
drawtext("MA30",barindex[4],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
drawtext("MA50",barindex[3],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
drawtext("MA100",barindex[2],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
drawtext("MA200",barindex[1],lowscale-diff,Dialog,Bold,10)coloured(200,100,0)
return lowscale coloured(0,0,0,255) style(point),highscale coloured(0,0,0,255) style(point)