To guarantee a circular shape for the arrows, I borrowed some code from Heiko Oberdiek's answer to
Draw nodes with path in tikz.

The code:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{bending,positioning}
\begin{document}
% code from Heiko Oberdiek
% https://tex.stackexchange.com/a/250270/3954
\begin{tikzpicture}[
->,
thick,
main node/.style={},
]
\newcommand*{\MainNum}{4}
\newcommand*{\MainRadius}{1.5cm}
\newcommand*{\MainStartAngle}{90}
% Print main nodes, node names: p1, p2, ...
\path
(0, 0) coordinate (M)
\foreach \t [count=\i] in {2,...,5} {
+({\i-1)*360/\MainNum + \MainStartAngle}:\MainRadius)
node[main node, align=center] (species_\i) {$S_\t$}
}
;
% Calculate the angle between the equal sides of the triangle
% with side length \MainRadius, \MainRadius and radius of circle node
% Result is stored in \p1-angle, \p2-angle, ...
\foreach \i in {1, ..., \MainNum} {
\pgfextracty{\dimen0 }{\pgfpointanchor{species_\i}{north}}
\pgfextracty{\dimen2 }{\pgfpointanchor{species_\i}{center}}
\dimen0=\dimexpr\dimen2 - \dimen0\relax
\ifdim\dimen0<0pt \dimen0 = -\dimen0 \fi
\pgfmathparse{2*asin(\the\dimen0/\MainRadius/2)}
\global\expandafter\let\csname p\i-angle\endcsname\pgfmathresult
}
% Draw the arrow arcs
\foreach \i [evaluate=\i as \nexti using {int(mod(\i, \MainNum)+1}]
in {1, ..., \MainNum} {
\pgfmathsetmacro\StartAngle{
(\i-1)*360/\MainNum + \MainStartAngle
+ \csname p\i-angle\endcsname
}
\pgfmathsetmacro\EndAngle{
(\nexti-1)*360/\MainNum + \MainStartAngle
- \csname p\nexti-angle\endcsname
}
\ifdim\EndAngle pt < \StartAngle pt
\pgfmathsetmacro\EndAngle{\EndAngle + 360}
\fi
\draw[<-]
(M) ++(\StartAngle:\MainRadius)
arc[start angle=\StartAngle, end angle=\EndAngle, radius=\MainRadius]
;
}
\node[above left=1.4cm and 10pt of species_2] (species_0)
{$S_1$};
\node[below left=1.4cm and 10pt of species_2] (species_5)
{$S_6$};
\node[right=2cm of species_4](equation_2)
{$S_2 + S_3 \rightarrow S_4 $};
\node[above=10pt of equation_2] (equation_1)
{$S_1 + S_5 \rightarrow S_2 $};
\node[below=10pt of equation_2] (equation_3)
{$S_4 + S_5 \rightarrow S_6 $};
\draw[->]
(species_0) to[out=-20,in=180] (species_1);
\draw[<-]
(species_5) to[out=20,in=180] (species_3);
\end{tikzpicture}
\end{document}