No, model is incremented by asset, algo, and long/short. In your example above it is not incremented.

For training two different methods 'knn' and 'rf', normally you would just use two different algos and then get two different model numbers.

if(mode == NEURAL_TRAIN) {
...
if(Algo == "KNN")
Rx("modellist[[model+1]] <- train(Data[, c(1,2)], Data[, 20], method = 'knn');
else if (Algo == "RF")
Rx("modellist[[model+1]] <- train(Data[, c(1,2)], Data[, 20], method = 'rf');
...