You do not need to type out all 300 variables manually, for MATLAB supports creating symbolic functions in bulk. It is recommended to use vector of symbolic functions, which creates x(t) as a 300×1 vector:
syms x(t) [300 1]
Now, one can access them as x(1), x(2), …, x(300), which correspond to x1(t),x2(t),…,x300(t)x_1(t), x_2(t), \ldots, x_{300}(t)x1(t),x2(t),…,x300(t); thereby, providing the cleanest approach which works very well when formulating DAEs for ode15s.