Digging through historical articles in wikipedia, it appears that command line options were invented for the Multics shell and used a single dash to distinguish options from option values.
CTSS (Compatible Time-Sharing System) was the first attempt at a time sharing system (started 1959-1961) and the first shell like command line interface RUNCOM was added in 1963. Prior to CTSS, systems were batch driven, likely from paper tape or punch card. Several other time sharing systems were also created around 1963, but it appears their "command line" was integrated into the operating system rather than a separate shell and was closer to programming commands rather than what we would recognize as command lines.
When developers from CTSS moved on and started working on multics (1964-1969), the shell and command line as we know it was invented, including use of the single dash for options. These developers carried this over into unix in 1969 when they left the multics project.
Email apparently was invented around 1965 (again, for CTSS). Wikipedia claims a paper for RUNCOM was published 1965.
Knowing how the developers of unix like shortcuts and abbreviations, it is no surprise the would use -
rather than +
just because the latter is harder to type on the default US layout. Also consider that options were not necessarily binary flags, but option names paired with option values, both of which needed to be distinguished from regular parameters.
Other operating systems (vms, windows, after 1975) used /
for options, likely just to be different from what they were copying.
--
in that page is an error; that page was created by scanning a hard copy and OCRing it.) Economy of typing was probably a factor ��� an unshifted character/key like-
would have been preferred over a shifted character/key like+
.set
builtin, but it appears in command line options of some commands too. But I think G-Man has a point there about the hyphen/dash/minus being available without modifier keys in the US keyboard layout.