In a large bowl, mix together the flour, baking powder, salt, milk, softened butter, and egg.
Slowly add the water, stirring between each addition.
Knead the dough for 5-10 minutes. The dough should feel very soft, but not too sticky.
Grease the bowl with oil, return the dough to the bowl, and cover with plastic wrap. Rest for 30 minutes in a warm place.
Place the dough in the center of a large piece of plastic. Wrap it tightly, ensuring the dough is completely covered.
Refrigerate for at least 8 hours.
Remove the dough from the refrigerator. Let it rest on the countertop for 1-2 hours, or until it comes to room temperature and is soft to the touch.
Fill a wok or large skillet with enough oil to come 2 inches from the top of the pan. Heat the oil over medium heat until it reaches 375°F (190°C).
Lightly flour the dough and the surface, then carefully pull, press, and roll the dough to form a long flat loaf shape, about ¼-inch (½ cm) thick and 4-inches (10 cm) wide.
Cut the dough crosswise into 1-inch (2-cm) wide strips.
Stack them 2 by 2.
Using a chopstick or skewer, press the center of the dough stack down lengthwise.
Gently stretch, then lower each dough stack into the oil. If the oil temperature is right, the dough should rise to the surface right away. Use chopsticks or tongs to quickly roll the dough in a continuous motion for about 1 minute.
Fry until the dough is light golden brown, about 5-7 minutes.
Cool on a wire rack.
Serve with sweet soy milk for dipping, if desired.