This first uses `sed` to convert the format you gave, 10152015, to the format `mm/dd/yyyy`, which the `date` command understands. This is accomplished by echoing the original date into `sed` which inserts the slashes `/`. This re-formatted date value is stored in `D`. Next we call date with instructions to print the output format "mmddyyyy", and tell it to print the date of `yesterday` using `$D` as the current date.
#!/bin/sh
D=$(echo ${1-10152015} | sed 's,^\(..\)\(..\)\(....\)$,\1/\2/\3,')
date +%m%d%Y -d"$D yesterday"