Faktiskt du har precis gjort ett mindre misstag - troligtvis ett kopieringsfel.
Följande rad kräver 8 parametrar istället för 4 eftersom du sätter frågetecken där du borde ha satt kolumnnamn.
insert into `stocks`(?,?,?,?) values (?,?,?,?);";
Om du ändrar den enligt följande (ersätter kolumnnamnen med dina riktiga namn från aktietabellen) så borde den fungera som du förväntade dig.
insert into stocks(ColumnNameOne, ColumnNameTwo, ColumnNameThree, ColumnNameFour)
values (?, ?, ?, ?);