В продолжение поста.
Обсуждение в комментариях надоумило сделать такой скрипт (для R)
Исходные данные хранятся в csv-файле, где по-порядку идут значение профита или лосса по каждому трейду (размерность не важна - в пунктах или деньгах, у меня в пунктах):
Код скрипта следующий:
Удачи!
Обсуждение в комментариях надоумило сделать такой скрипт (для R)
Исходные данные хранятся в csv-файле, где по-порядку идут значение профита или лосса по каждому трейду (размерность не важна - в пунктах или деньгах, у меня в пунктах):
-0.0009 0.0374 -0.0071 -0.004 0.0206 0.0128 0.0011 0.0003 0.0025 0.0786
Код скрипта следующий:
pl<-scan("pl.csv") n<-length(pl) x<-c(0,length=n) # вектор отношения среднего профита к среднему лосю y<-c(0,length=n) # вектор доли профитных сделок qp<-0 # кол-во профитных трейдов ql<-0 # кол-во лоссов sp<-0 # напопленный профит sl<-0 # накопленные лоссы for(i in 1:n){ if (pl[i]>0){ qp<-qp+1 sp<-sp+pl[i]} else{ ql<-ql+1 sl<-sl+pl[i]} y[i]=qp/i if(sl!=0 && qp!=0) x[i]=(sp*ql)/(abs(sl)*qp) } i<-seq(5,n) m<-ceiling(max(x[i])) xs<-seq(0,m,.1) ys<-1/(1+xs) plot(xs,ys, type="l", col="red", lwd=2, xlab="отношение среднего профита к среднему лосю", ylab="частота профитов", main="Динамика системы и кривая безубыточности") grid() lines(x[i],y[i],type="l", col="blue") points(x[n],y[n],lwd=4, pch=3, bg="black") text(x[n]+2,min(y[i])-.1,"+ - крайний по времени трейд")
Удачи!
Комментариев нет:
Отправить комментарий