I would like to draw this picture by tikz:

This is what I could achieve for now:
\documentclass{standalone}
\usepackage{tikz}
\pagecolor{yellow}
\begin{document}
\color{orange!80!red}
\begin{tikzpicture}
\clip (-0.5,-0.5) rectangle (.5,.5);
\begin{scope}[xshift=4,yshift=12.4]
\fill (0,0) circle (0.05);
\end{scope}
\begin{scope}[xshift=10.5,yshift=-8.5]
\fill (0,0) circle (0.05);
\end{scope}
\begin{scope}[xshift=-11.5,yshift=-5.5]
\fill (0,0) circle (0.05);
\end{scope}
\clip[xshift=4,yshift=12.4] (0,0) circle (0.06) [insert path ={(-2,-2) rectangle (2,2)}];
\clip[xshift=10.5,yshift=-8.5] (0,0) circle (0.06) [insert path ={(-2,-2) rectangle (2,2)}];
\clip[xshift=-11.5,yshift=-5.5] (0,0) circle (0.06) [insert path ={(-2,-2) rectangle (2,2)}];
\begin{scope}[rotate=-70]
\clip (-0.015,0.005) ellipse (0.17 and 0.46) [insert path ={(-0.5,-0.5) rectangle (.5,.5)}];
\fill (0,0) ellipse (0.2 and 0.5);
\end{scope}
\begin{scope}[rotate=50]
\clip (-0.015,0.005) ellipse (0.17 and 0.46) [insert path ={(-2,-2) rectangle (2,2)}];
\fill (0,0) ellipse (0.2 and 0.5);
\end{scope}
\begin{scope}[rotate=-10]
\clip (-0.015,0.005) ellipse (0.17 and 0.46) [insert path ={(-2,-2) rectangle (2,2)}];
\fill (0,0) ellipse (0.2 and 0.5);
\end{scope}
\begin{scope}[xshift=-0.33,yshift=0.05]
\fill (0,0) circle (0.08);
\end{scope}
\end{tikzpicture}
\end{document}
I don't know how to draw the crossing of each ellipse. Note that the background color is not determined and may NOT be white, so one can't just draw a wider ellipse of background color behind each ellipse.
I believe this can be achieved by multiple use of \clip, just like the three circle I've drown here, but for the ellipses it seems more tricky and I have no idea with it.
Do you have any suggestions?

