###### Does the readme file contain a description of the project, explain how to run the code from an empty environment, give a summary of the implementation of each python file and contain a conclusion that gives the performance of the strategy?
###### Does the notebook identify and describe at least 5 outliers ('ticker', 'date', 'price') by cross-referencing historical stock prices from an external source such as Google?
> Note: This approach aims not to precisely match the historical price but to detect substantial differences between our dataset and verified historical data.
###### Is the future return computed using only current and future value? (Reminder: as the data is resampled monthly, computing the return is straightforward)
###### Are the missing values filled using the last value available for **for the company**?
Note: Simply applying df.fill() might be insufficient if the DataFrame isn't properly grouped or sorted by company/ticker. Ensure that the missing values are filled within each company's data independently to avoid potential mixing of information from different companies.
Do not fill the last values for the future return because the values are missing because the data set ends at a given date. Filling the previous doesn't make sense. It makes more sense to drop the row because the backtest focuses on observed data.
###### Is the metric **average_return_1y** added as a new column in the merged DataFrame? The metric is relative to a company. It is important to group the data by company first before to compute the average return over 1y. It is accepted to consider that one year is 12 consecutive rows.
###### Is the signal added as a new column to the merged DataFrame? The signal which is boolean indicates whether, within the same month, the company is in the top 20. The top 20 corresponds to the 20 companies with the 20 highest metric within the same month. The highest metric gets the rank 1 (if rank is used the parameter **ascending** should be set to **False**).
###### Does the command **python main.py** execute the code from data imports to the backtest and save the results? It shouldn't return any error to validate the project.