Heat olive oil in a large pot or Dutch oven over medium-high heat. Sear the beef on both sides until browned, about 3-4 minutes per side. Remove and set aside.
In the same pot, add onions and bell peppers. Sauté until softened, about 5 minutes. Stir in garlic, cumin, oregano, smoked paprika, and black pepper, cooking for another minute.
Add tomato paste and cook for another minute. Stir in crushed tomatoes, beef broth, olives, capers, red wine vinegar, and bay leaves.
Return the beef to the pot, submerging it in the sauce. Cover and simmer on low heat for 2 to 2.5 hours until the beef is tender.
Remove the beef and shred it using two forks. Return the shredded beef to the pot and stir to coat it in the sauce.
Simmer for another 10 minutes, then remove bay leaves. Garnish with fresh cilantro and serve warm.