Best practices for EA backtest and optimization

 

Hello everyone,

I'm fairly new to algotrading and I'm trying to figure it out what are the best practices when backtesting and optimizing an EA. Therefore, I was wondering if some of you have some good well structured resources about the topic. 

For example, the very first thing I understood is the necessity for quality data, but I don't have any criteria to evaluate them. I also learned something about the hill-climbing approach and the importance of OOS data, but it's nearly as much as I'd like to know about the topic so if someone can share with my any guide or anything like that I'd be very grateful.

Thanks for the attention.