Я не могу проверить это сейчас, но вы пробовали:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"pinColor == %d", MKPinAnnotationColorGreen];
[myMapView removeAnnotations:[myMapView.annotations filteredArrayUsingPredicate:predicate]];
Что касается добавленных пользователем, возможно, вам придется отслеживать их самостоятельно. Вы также можете создать свой собственный подкласс MKPinAnnotation. В этом подклассе добавьте свойство
@property (nonatomic, BOOL) addedByUser;
. Вы можете установить для параметра AddedByUser значение true, если они были добавлены пользователем, а затем отфильтровать их, используя аналогичный подход, описанный выше (например, @ "AddedByUser == YES").