Você deseja manter as alterações relacionadas juntas. Por exemplo, se você implementar uma relação bidirecional e adicionar colunas / tabelas para relações AR suficientes, você deseja mantê-las em uma migração.
Se as alterações no esquema não estiverem relacionadas umas às outras (partes de recursos diferentes, por exemplo), é melhor mantê-las em migrações separadas.
Faço um experimento mental quando não tenho certeza. Tento interromper a migração para as menores partes possíveis e, em seguida, verifico se meu recurso ainda funciona se eu remover apenas uma delas. Se for esse pedaço, provavelmente não pertence a essa migração.
O seu parece-me que pode ser dividido em duas migrações. Parece que você tem dois recursos aqui. Um é sobre adicionar horários aos jogadores e outro para adicionar treinadores aos horários.