public boolean drawSymbol(Graphics2D g, int x, int y, int width, int height) {
		if (this.slave != null && this.slave.barsState == BarsState.DOTS_WITH_BARS) {
			switch (symbol) {
				case CIRCLE:
					g.fillOval((int)(x - width / 2.0), (int)(y - height / 2.0), width, height);
					return true;
				case TRIANGLE_UP:
					width = (int)(width * 1.2);
					height = (int)(height * 1.2);
					int ydown = y + (int)Math.round(Math.tan(Math.PI / 6) * Math.tan(Math.PI / 6) * height),
						yup = ydown - height;
					int xTU[] = new int[]{(int)(x - width / 2.0), x, (int)(x + width / 2.0)},
						yTU[] = new int[]{ydown, yup, ydown}; //(int)(y + height / 2.0), (int)(y - height / 2.0), (int)(y + height / 2.0)};
					polygon = new Polygon(xTU, yTU, xTU.length);
					g.fillPolygon(polygon);
					return true;
				case SQUARE:
					g.fillRect((int)(x - width / 2.0), (int)(y - height / 2.0), width, height);
					return true;
				case TRIANGLE_DOWN:
					width = (int)(width * 1.2);
					height = (int)(height * 1.2);
					int yu = y - (int)Math.round(Math.tan(Math.PI / 6) * Math.tan(Math.PI / 6) * height),
						yd = yu + height;
					int xTD[] = new int[]{(int)(x - width / 2.0), (int)(x + width / 2.0), x},
						yTD[] = new int[]{yu, yu, yd}; //(int)(y - height / 2.0), (int)(y - height / 2.0), (int)(y + height / 2.0)};
					polygon = new Polygon(xTD, yTD, xTD.length);
					g.fillPolygon(polygon);
					return true;
				case DIAMOND:
					width = (int)(width * 1.5);
					height = (int)(height * 1.5);
					int xD[] = new int[]{(int)(x - width / 2.0), x, (int)(x + width / 2.0), x},
						yD[] = new int[]{y, (int)(y - height / 2.0), y, (int)(y + height / 2.0)};
					polygon = new Polygon(xD, yD, xD.length);
					g.fillPolygon(polygon);
					return true;
				case X:
					width = (int)(width * 0.8);
					height = (int)(height * 0.8);
					g.drawLine((int)(x - width / 2.0), (int)(y - height / 2.0), (int)(x + width / 2.0), (int)(y + height / 2.0));
					g.drawLine((int)(x + width / 2.0), (int)(y - height / 2.0), (int)(x - width / 2.0), (int)(y + height / 2.0));
					return true;
				default:
					break;
			}
		}
		return false;
	}