\newcommandのオプション引数は
\newcommand{\コマンド名}[引数の個数][引数#1のデフォルト値]{コマンド}
らしい。
オプション引数にできるのは#1だけ。
\newcommand{\TestCommand}[3][でふぉると値]{#1、#2、#3}
\TestCommand{にこめ}{さんこめ}
\TestCommand[いっこめ]{にこめ}{さんこめ}
とすると
と出力される。
間違えそうなのが、使うときに引数#1に値を入れる括弧が [ ] であるところ。