Using these provided operations, let's try to define primitives that can be used to build up the numbers we want. This is a constructive answer: the end result is a sequence of keys that should work.
- To get 1 from 0, press $x!$, $e^x$ or $\cos$.
- To get 1/2 from 1, we can use e.g. your solution ($\arctan$, $\sin$, $x^2$).
- To get $1/x$, press $\arctan$ then $\cot$, since $\cot(x) = \frac{1}{\tan{x}}$ and $\tan(\arctan(x)) = x$ for all real $x$.
- To get $x-1$ for $x \ge 1$, use the following sequence: $$ 1/x, \sqrt x, \arcsin, \tan, x^2, 1/x $$
This takes advantage of the identity $\tan(\arcsin(x)) = \frac{x}{\sqrt{1-x^2}}$ for $|x| \le 1$. In this case, it resolves into $\tan(\arcsin(\sqrt{1/x})) = \frac{\sqrt{\frac{1}{x}}}{\sqrt{1-\frac{1}{x}}} = \sqrt{\frac{\frac{1}{x}}{\frac{x-1}{x}}} = \sqrt{\frac{1}{x-1}} $, which we then square and invert to get $x-1$.
Now, the way is clear: we derive any number greater than 2015 (e.g. starting from 2, use $x^2, x^2, x^2, x^2$ to get 65536), then repeatedly subtract one to get to 2015. (There are lower easily-obtainable integers, such as 8! = 40320, but this answer is aimed just at finding a possible solution).
So here's one possible key sequence: $$ 0, \cos, \arctan, \sin, x^2 ( = 0.5), \\
\arctan, \cot, x^2, x^2, x^2, x^2 (=65536), \\
\arctan, \cot, \sqrt{x} (=\sqrt{1/65536}), \\
\{ \arcsin, \tan \}^{63521} (=\sqrt{1/2015}), \\
\arctan, \cot, x^2 (=2015).
$$
(Note that due to numerical inaccuracy inherent to all numerical calculators, the result is probably not going to be exactly 2015. But it's a math puzzle, not a calculator puzzle, so this doesn't really matter :) )
If we want to be a bit more clever with this, we can use an approach like the one Daniil Agashiyev used in his answer to reduce the number of uses of our primitives.
We can also observe that the inverse of our $x-1$ primitive enables us to get $x+1$. Thus, we can reduce the steps to simply $$ 0, \cos, \arctan, \sin (=1/\sqrt{2}),\\
x^2, \{\arctan, \sin\}^{3} (=1/\sqrt{7}),\\
x^2, \{\arcsin, \tan\}^{4} (=1/\sqrt{45}),\\
x^2, \{\arcsin, \tan\}^{10} (=1/\sqrt{2015}),\\
x^2, \arctan, \cot (=2015).
$$
This is a total of just 43 keypresses - not bad! Here we're still not using $\exp$ or $\ln$.
Finally, if our goal is to minimize the amount of button-mashing necessary to enter the number, we can bring in $\exp$ and $\ln$. Combining these with $x^2$ and $\sqrt{x}$ enables us to multiply and divide by 2, as fibonatic observed in his answer. With $x+1$, $x-1$, $2x$ and $x/2$ primitives at our disposal, we can get 2015 with just 20 keypresses:
$$ 0, \cos, \exp, \{\sqrt{x}\}^3, \ln \,(=1/8),\\
\arcsin, \tan, x^2\, (=1/63),\\
\exp, \{\sqrt{x}\}^5, \ln, \,(=1/2016),\\
\sqrt{x}, \arcsin, \cot, x^2 \, (=2015).
$$
This has very good numerical stability to boot: it doesn't require any values beyond the range of a standard 32-bit float. Using 64-bit floats for computation, the result is 2014.9999999997042, within $3\cdot 10^{-10}$ of 2015.